OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ConfigJsonParserBase Class Referenceabstract

#include <config_json_parser_base.h>

Inheritance diagram for ConfigJsonParserBase:
Collaboration diagram for ConfigJsonParserBase:

Public Types

typedef std::set< std::string > ObjectTypeList
 
typedef std::pair< std::string,
std::string > 
LinkMemberPair
 
typedef std::pair< std::string,
bool > 
LinkDataPair
 
typedef std::map
< LinkMemberPair, std::string > 
ParentNameMap
 
typedef std::map
< LinkMemberPair, LinkDataPair
LinkNameMap
 
typedef std::map< std::string,
std::string > 
WrapperFieldMap
 

Public Member Functions

 ConfigJsonParserBase ()
 
virtual ~ConfigJsonParserBase ()
 
virtual void SetupGraphFilter ()=0
 
virtual bool Receive (const ConfigCass2JsonAdapter &adapter, bool add_change)=0
 
virtual void EndOfConfig ()
 
const ObjectTypeListObjectTypeListToRead () const
 
std::string GetParentName (const std::string &left, const std::string &right) const
 
std::string GetLinkName (const std::string &left, const std::string &right) const
 
std::string GetWrapperFieldName (const std::string &type_name, const std::string &property_name) const
 
bool IsLinkWithAttr (const std::string &left, const std::string &right) const
 
void Init (ConfigClientManager *mgr)
 
uint64_t GetGenerationNumber () const
 
void AddLinkName (LinkMemberPair member_pair, LinkDataPair data_pair)
 
void AddParentName (LinkMemberPair member_pair, std::string s)
 
void AddWrapperField (std::string key, std::string value)
 
void AddObjectType (std::string object)
 
const bool IsReadObjectType (std::string objectType)
 
bool IsListOrMapPropEmpty (const std::string &uuid_key, const std::string &lookup_key) const
 

Private Attributes

ConfigClientManagermgr_
 
LinkNameMap link_name_map_
 
ParentNameMap parent_name_map_
 
WrapperFieldMap wrapper_field_map_
 
ObjectTypeList obj_type_to_read_
 

Detailed Description

Definition at line 22 of file config_json_parser_base.h.

Member Typedef Documentation

typedef std::pair<std::string, bool> ConfigJsonParserBase::LinkDataPair

Definition at line 26 of file config_json_parser_base.h.

typedef std::pair<std::string, std::string> ConfigJsonParserBase::LinkMemberPair

Definition at line 25 of file config_json_parser_base.h.

typedef std::set<std::string> ConfigJsonParserBase::ObjectTypeList

Definition at line 24 of file config_json_parser_base.h.

typedef std::map<LinkMemberPair, std::string> ConfigJsonParserBase::ParentNameMap

Definition at line 27 of file config_json_parser_base.h.

typedef std::map<std::string, std::string> ConfigJsonParserBase::WrapperFieldMap

Definition at line 29 of file config_json_parser_base.h.

Constructor & Destructor Documentation

ConfigJsonParserBase::ConfigJsonParserBase ( )

Definition at line 13 of file config_json_parser_base.cc.

ConfigJsonParserBase::~ConfigJsonParserBase ( )
virtual

Definition at line 16 of file config_json_parser_base.cc.

Member Function Documentation

void ConfigJsonParserBase::AddLinkName ( LinkMemberPair  member_pair,
LinkDataPair  data_pair 
)
inline

Definition at line 69 of file config_json_parser_base.h.

void ConfigJsonParserBase::AddObjectType ( std::string  object)
inline

Definition at line 81 of file config_json_parser_base.h.

void ConfigJsonParserBase::AddParentName ( LinkMemberPair  member_pair,
std::string  s 
)
inline

Definition at line 73 of file config_json_parser_base.h.

void ConfigJsonParserBase::AddWrapperField ( std::string  key,
std::string  value 
)
inline

Definition at line 77 of file config_json_parser_base.h.

void ConfigJsonParserBase::EndOfConfig ( )
virtual

Reimplemented in ConfigJsonParser.

Definition at line 19 of file config_json_parser_base.cc.

uint64_t ConfigJsonParserBase::GetGenerationNumber ( ) const
inline

Definition at line 65 of file config_json_parser_base.h.

Here is the call graph for this function:

std::string ConfigJsonParserBase::GetLinkName ( const std::string &  left,
const std::string &  right 
) const

Definition at line 32 of file config_json_parser_base.cc.

std::string ConfigJsonParserBase::GetParentName ( const std::string &  left,
const std::string &  right 
) const

Definition at line 23 of file config_json_parser_base.cc.

std::string ConfigJsonParserBase::GetWrapperFieldName ( const std::string &  type_name,
const std::string &  property_name 
) const

Definition at line 50 of file config_json_parser_base.cc.

void ConfigJsonParserBase::Init ( ConfigClientManager mgr)
inline

Definition at line 60 of file config_json_parser_base.h.

Here is the call graph for this function:

bool ConfigJsonParserBase::IsLinkWithAttr ( const std::string &  left,
const std::string &  right 
) const

Definition at line 41 of file config_json_parser_base.cc.

bool ConfigJsonParserBase::IsListOrMapPropEmpty ( const std::string &  uuid_key,
const std::string &  lookup_key 
) const

Definition at line 64 of file config_json_parser_base.cc.

Here is the call graph for this function:

const bool ConfigJsonParserBase::IsReadObjectType ( std::string  objectType)
inline

Definition at line 85 of file config_json_parser_base.h.

const ObjectTypeList& ConfigJsonParserBase::ObjectTypeListToRead ( ) const
inline

Definition at line 46 of file config_json_parser_base.h.

virtual bool ConfigJsonParserBase::Receive ( const ConfigCass2JsonAdapter adapter,
bool  add_change 
)
pure virtual

Implemented in ConfigJsonParser.

virtual void ConfigJsonParserBase::SetupGraphFilter ( )
pure virtual

Implemented in ConfigJsonParser.

Member Data Documentation

LinkNameMap ConfigJsonParserBase::link_name_map_
private

Definition at line 96 of file config_json_parser_base.h.

ConfigClientManager* ConfigJsonParserBase::mgr_
private

Definition at line 95 of file config_json_parser_base.h.

ObjectTypeList ConfigJsonParserBase::obj_type_to_read_
private

Definition at line 100 of file config_json_parser_base.h.

ParentNameMap ConfigJsonParserBase::parent_name_map_
private

Definition at line 97 of file config_json_parser_base.h.

WrapperFieldMap ConfigJsonParserBase::wrapper_field_map_
private

Definition at line 99 of file config_json_parser_base.h.


The documentation for this class was generated from the following files: