Line data Source code
1 : /* 2 : * Copyright (c) 2013 Juniper Networks, Inc. All rights reserved. 3 : */ 4 : 5 : #ifndef __ctrlplane__ifmap_node_proxy__ 6 : #define __ctrlplane__ifmap_node_proxy__ 7 : 8 : #include "base/util.h" 9 : #include "db/db_entry.h" 10 : #include "db/db_table.h" 11 : 12 : class IFMapNode; 13 : 14 : class IFMapNodeProxy : public DBState { 15 : public: 16 : IFMapNodeProxy(); 17 : IFMapNodeProxy(IFMapNodeProxy *rhs); 18 : IFMapNodeProxy(IFMapNode *node, DBTable::ListenerId lid); 19 : ~IFMapNodeProxy(); 20 324935 : IFMapNode *node() { return node_; } 21 18874 : const IFMapNode *node() const { return node_; } 22 : void Swap(IFMapNodeProxy *rhs); 23 : void Clear(); 24 : 25 : private: 26 : IFMapNode *node_; 27 : DBTable::ListenerId id_; 28 : DISALLOW_COPY_AND_ASSIGN(IFMapNodeProxy); 29 : }; 30 : 31 : #endif /* defined(__ctrlplane__ifmap_node_proxy__) */