5 #ifndef vnsw_agent_resource_sandesh_map_hpp
6 #define vnsw_agent_resource_sandesh_map_hpp
7 #include "resource_manager/resource_manager_types.h"
22 const std::string &name,
23 const std::string& file_name);
40 static const std::string
FindFile(
const std::string &root,
41 const std::string & file_ext);
47 template <
typename T1,
typename T2>
69 typedef std::map<uint32_t, VrfMplsResource>
Map;
85 typedef std::map<uint32_t, VlanMplsResource>
Map;
102 typedef std::map<uint32_t, InterfaceIndexResource>
Map;
118 typedef std::map<uint32_t, RouteMplsResource>
Map;
134 typedef std::map<uint32_t, VmInterfaceIndexResource>
Map;
150 typedef std::map<uint32_t, VrfIndexResource>
Map;
166 typedef std::map<uint32_t, QosIndexResource>
Map;
183 typedef std::map<uint32_t, BgpAsServiceIndexResource>
Map;
199 typedef std::map<uint32_t, MirrorIndexResource>
Map;
217 typedef pair<uint32_t, InterfaceIndexResource>
220 typedef pair<uint32_t, VmInterfaceIndexResource>
224 typedef pair<uint32_t, BgpAsServiceIndexResource>
233 InterfaceIndexResource data );
236 VrfMplsResource data);
239 VlanMplsResource data);
242 RouteMplsResource data);
246 VmInterfaceIndexResource data);
250 VrfIndexResource data);
254 QosIndexResource data);
258 BgpAsServiceIndexResource data);
262 MirrorIndexResource data);
bool WriteMapToFile(T1 *sandesh_data, const T2 &index_map)
const std::string & file_name_str()
DISALLOW_COPY_AND_ASSIGN(BackUpResourceTable)
virtual void ReadFromFile()=0
virtual bool WriteToFile()=0
static const std::string FindFile(const std::string &root, const std::string &file_ext)
virtual ~BackUpResourceTable()
uint32_t backup_idle_timeout_
uint64_t last_modified_time_
void ReadMapFromFile(T *sandesh_data, const std::string &root)
std::string file_name_prefix_
void EnqueueRestore(ResourceManager::KeyPtr key, ResourceManager::DataPtr data)
const std::string & backup_dir()
std::string file_name_str_
static const uint8_t kFallBackCount
static bool CalculateHashSum(const std::string &file_name, uint32_t *hashsum)
ResourceBackupManager * backup_manager_
BackUpResourceTable(ResourceBackupManager *manager, const std::string &name, const std::string &file_name)
ResourceBackupManager * backup_manager()
virtual void RestoreResource()=0
const std::string & file_name_prefix()
BgpAsServiceBackUpResourceTable(ResourceBackupManager *manager)
virtual ~BgpAsServiceBackUpResourceTable()
std::map< uint32_t, BgpAsServiceIndexResource > Map
virtual ~InterfaceMplsBackUpResourceTable()
std::map< uint32_t, InterfaceIndexResource > Map
InterfaceMplsBackUpResourceTable(ResourceBackupManager *manager)
MirrorBackUpResourceTable(ResourceBackupManager *manager)
std::map< uint32_t, MirrorIndexResource > Map
virtual ~MirrorBackUpResourceTable()
std::map< uint32_t, QosIndexResource > Map
virtual ~QosBackUpResourceTable()
QosBackUpResourceTable(ResourceBackupManager *manager)
boost::shared_ptr< ResourceKey > KeyPtr
boost::shared_ptr< ResourceData > DataPtr
void DeleteBgpAsServiceResourceEntry(uint32_t index)
void DeleteVrfResourceEntry(uint32_t index)
pair< uint32_t, VlanMplsResource > VlanMplsResourcePair
void AddRouteMplsResourceEntry(uint32_t index, RouteMplsResource data)
pair< uint32_t, RouteMplsResource > RouteMplsResourcePair
MirrorBackUpResourceTable & mirror_index_table()
VmInterfaceBackUpResourceTable & vm_interface_index_table()
pair< uint32_t, InterfaceIndexResource > InterfaceMplsResourcePair
BgpAsServiceBackUpResourceTable bgp_as_service_index_table_
QosBackUpResourceTable qos_index_table_
void AddVlanMplsResourceEntry(uint32_t index, VlanMplsResource data)
virtual ~ResourceSandeshMaps()
pair< uint32_t, BgpAsServiceIndexResource > BgpAsServiceIndexResourcePair
void DeleteVrfMplsResourceEntry(uint32_t index)
void DeleteQosResourceEntry(uint32_t index)
BgpAsServiceBackUpResourceTable & bgp_as_service_index_table()
void AddVrfMplsResourceEntry(uint32_t index, VrfMplsResource data)
void AddMirrorResourceEntry(uint32_t index, MirrorIndexResource data)
VrfBackUpResourceTable & vrf_index_table()
void AddBgpAsServiceResourceEntry(uint32_t index, BgpAsServiceIndexResource data)
VrfBackUpResourceTable vrf_index_table_
pair< uint32_t, VmInterfaceIndexResource > VmInterfaceIndexResourcePair
QosBackUpResourceTable & qos_index_table()
InterfaceMplsBackUpResourceTable & interface_mpls_index_table()
VrfMplsBackUpResourceTable vrf_mpls_index_table_
pair< uint32_t, VrfMplsResource > VrfMplsResourcePair
void AddInterfaceMplsResourceEntry(uint32_t index, InterfaceIndexResource data)
VlanMplsBackUpResourceTable & vlan_mpls_index_table()
VmInterfaceBackUpResourceTable vm_interface_index_table_
VlanMplsBackUpResourceTable vlan_mpls_index_table_
MirrorBackUpResourceTable mirror_index_table_
void DeleteMirrorResourceEntry(uint32_t index)
VrfMplsBackUpResourceTable & vrf_mpls_index_table()
RouteMplsBackUpResourceTable route_mpls_index_table_
DISALLOW_COPY_AND_ASSIGN(ResourceSandeshMaps)
void AddVmInterfaceResourceEntry(uint32_t index, VmInterfaceIndexResource data)
void DeleteVlanMplsResourceEntry(uint32_t index)
InterfaceMplsBackUpResourceTable interface_mpls_index_table_
void DeleteInterfaceMplsResourceEntry(uint32_t index)
void AddVrfResourceEntry(uint32_t index, VrfIndexResource data)
RouteMplsBackUpResourceTable & route_mpls_index_table()
pair< uint32_t, QosIndexResource > QosIndexResourcePair
ResourceSandeshMaps(ResourceBackupManager *manager)
pair< uint32_t, VrfIndexResource > VrfIndexResourcePair
void DeleteRouteMplsResourceEntry(uint32_t index)
ResourceBackupManager * backup_manager_
pair< uint32_t, MirrorIndexResource > MirrorIndexResourcePair
void DeleteVmInterfaceResourceEntry(uint32_t index)
void AddQosResourceEntry(uint32_t index, QosIndexResource data)
RouteMplsBackUpResourceTable(ResourceBackupManager *manager)
virtual ~RouteMplsBackUpResourceTable()
std::map< uint32_t, RouteMplsResource > Map
VlanMplsBackUpResourceTable(ResourceBackupManager *manager)
std::map< uint32_t, VlanMplsResource > Map
virtual ~VlanMplsBackUpResourceTable()
VmInterfaceBackUpResourceTable(ResourceBackupManager *manager)
virtual ~VmInterfaceBackUpResourceTable()
std::map< uint32_t, VmInterfaceIndexResource > Map
std::map< uint32_t, VrfIndexResource > Map
virtual ~VrfBackUpResourceTable()
VrfBackUpResourceTable(ResourceBackupManager *manager)
std::map< uint32_t, VrfMplsResource > Map
VrfMplsBackUpResourceTable(ResourceBackupManager *manager)
virtual ~VrfMplsBackUpResourceTable()