#ifndef XAPP_MODEL_ConfigMetadata_H #define XAPP_MODEL_ConfigMetadata_H #include "ModelBase.h" namespace xapp { namespace model { struct ConfigMetadata: ModelBase { std::string ConfigType; std::string XappName; json validator_schema = R"( { "$schema": "http://json-schema.org/draft-07/schema#", "title": "ConfigMetadata", "properties": { "ConfigType": { "description": "Type of Config", "type": "string", "enum": ["json", "xml", "other"] }, "XappName": { "description": "Name of xApp", "type": "string" } }, "required": [ "ConfigType", "XappName" ], "type": "object" })"_json; virtual json get_validator_schema() const { return validator_schema; } }; void from_json(const json& j, ConfigMetadata& ref) { std::cout << __func__ << " ConfigMetadata " << std::endl; ref.validate_json(j); j.at("ConfigType").get_to(ref.ConfigType); j.at("XappName").get_to(ref.XappName); } void to_json(json& j, const ConfigMetadata& ref) { j = json { {"ConfigType",ref.ConfigType}, {"XappName", ref.XappName} }; } } /*namespace model*/ } /*namespace xapp*/ #endif /*XAPP_MODEL_ConfigMetadata_H*/