5 #ifndef ctrlplane_config_json_parser_h
6 #define ctrlplane_config_json_parser_h
18 #include "rapidjson/document.h"
22 #include <boost/function.hpp>
29 typedef boost::function<
30 bool(
const contrail_rapidjson::Value &, std::unique_ptr<AutogenProperty> *)
62 const contrail_rapidjson::Value &key_node,
63 const contrail_rapidjson::Value &value_node,
70 const contrail_rapidjson::Value &ref_entry,
75 const contrail_rapidjson::Value &arr,
78 size_t pos,
bool add_change)
const;
81 const std::string &neigh_type,
const std::string &neigh_name,
82 const std::string &metaname, std::unique_ptr<AutogenProperty> &pvalue,
91 #endif // ctrlplane_config_json_parser_h
MetadataParseMap metadata_map_
std::map< std::string, MetadataParseFn > MetadataParseMap
boost::function< bool(const contrail_rapidjson::Value &, std::unique_ptr< AutogenProperty > *) > MetadataParseFn
bool ParseOneProperty(const ConfigCass2JsonAdapter &adapter, const contrail_rapidjson::Value &key_node, const contrail_rapidjson::Value &value_node, const IFMapTable::RequestKey &key, IFMapOrigin::Origin origin, RequestList *req_list, bool add_change) const
void ifmap_server_set(IFMapServer *ifmap_server)
bool ParseOneRef(const ConfigCass2JsonAdapter &adapter, const contrail_rapidjson::Value &arr, const IFMapTable::RequestKey &key, IFMapOrigin::Origin origin, RequestList *req_list, const std::string &key_str, size_t pos, bool add_change) const
void MetadataRegister(const std::string &metadata, MetadataParseFn parser)
IFMapServer * ifmap_server_
bool ParseDocument(const ConfigCass2JsonAdapter &adapter, IFMapOrigin::Origin origin, RequestList *req_list, IFMapTable::RequestKey *key, bool add_change) const
void SetupSchemaGraphFilter()
bool ParseLinks(const ConfigCass2JsonAdapter &adapter, const IFMapTable::RequestKey &key, IFMapOrigin::Origin origin, RequestList *req_list, bool add_change) const
bool ParseRef(const ConfigCass2JsonAdapter &adapter, const contrail_rapidjson::Value &ref_entry, IFMapOrigin::Origin origin, const std::string &refer, const IFMapTable::RequestKey &key, RequestList *req_list, bool add_change) const
bool ParseProperties(const ConfigCass2JsonAdapter &adapter, const IFMapTable::RequestKey &key, IFMapOrigin::Origin origin, RequestList *req_list, bool add_change) const
void SetupSchemaWrapperPropertyInfo()
void EnqueueListToTables(RequestList *req_list) const
IFMapTable::RequestKey * CloneKey(const IFMapTable::RequestKey &src) const
bool ParseNameType(const ConfigCass2JsonAdapter &adapter, IFMapTable::RequestKey *key) const
virtual bool Receive(const ConfigCass2JsonAdapter &adapter, bool add_change)
void MetadataClear(const std::string &module)
std::list< struct DBRequest * > RequestList
virtual void SetupGraphFilter()
void InsertRequestIntoQ(IFMapOrigin::Origin origin, const std::string &neigh_type, const std::string &neigh_name, const std::string &metaname, std::unique_ptr< AutogenProperty > &pvalue, const IFMapTable::RequestKey &key, bool add_change, RequestList *req_list) const
virtual void EndOfConfig()