OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
resource_backup.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2016 Juniper Networks, Inc. All rights reserved.
3  */
4 
5 #ifndef vnsw_agent_resource_backup_hpp
6 #define vnsw_agent_resource_backup_hpp
7 
8 
11 
12 class Timer;
14 class ResourceManager;
15 class ResourceTable;
16 class ResourceData;
17 
19 public:
20  enum Op {
21  ADD = 1,
22  DEL,
23  };
24 
27  Op op);
28  virtual ~ResourceBackupReq();
29  void Process();
32 
33 
34 private:
39 };
40 //Backup manager is to Process the Resource data and store
41 //it in to a file using Sandesh encoding.
43 public:
44  typedef boost::shared_ptr<ResourceBackupReq> ResourceBackupReqPtr;
46  virtual ~ResourceBackupManager();
47 
48  void Init();
50  static uint32_t ReadResourceDataFromFile(const std::string &file_name,
51  std::unique_ptr<uint8_t> *buf);
52 
53  Agent *agent() {return agent_;}
59  void AuditDone();
60 
61 private:
65  // Work queue to backup the data.
69 };
70 
71 #endif
ResourceBackupReq(ResourceManager::KeyPtr key, ResourceManager::DataPtr data, Op op)
ResourceManager::KeyPtr key_
boost::shared_ptr< ResourceKey > KeyPtr
ResourceSandeshMaps sandesh_maps_
boost::shared_ptr< ResourceData > DataPtr
DISALLOW_COPY_AND_ASSIGN(ResourceBackupReq)
ResourceManager::KeyPtr key()
DISALLOW_COPY_AND_ASSIGN(ResourceBackupManager)
Definition: agent.h:358
bool WorkQueueBackUpProcess(ResourceBackupReqPtr backup_data)
WorkQueue< ResourceBackupReqPtr > backup_work_queue_
ResourceManager * resource_manager_
ResourceManager::DataPtr data()
static uint32_t ReadResourceDataFromFile(const std::string &file_name, std::unique_ptr< uint8_t > *buf)
void BackupResource(ResourceManager::KeyPtr key, ResourceManager::DataPtr data, ResourceBackupReq::Op op)
boost::shared_ptr< ResourceBackupReq > ResourceBackupReqPtr
virtual ~ResourceBackupManager()
boost::shared_ptr< EventNotifyHandle > Ptr
ResourceSandeshMaps & sandesh_maps()
virtual ~ResourceBackupReq()
ResourceBackupManager(ResourceManager *mgr)
Definition: timer.h:54
ResourceManager::DataPtr data_
ResourceManager * resource_manager()
EventNotifyHandle::Ptr audit_handle_