Fawkes API
Fawkes Development Version
|
16 #define RAPIDJSON_HAS_STDSTRING 1
17 #include "InterfaceFieldType.h"
19 #include <rapidjson/fwd.h>
59 virtual std::string
to_json(
bool pretty =
false)
const;
64 virtual void to_json_value(rapidjson::Document &d, rapidjson::Value &v)
const;
70 virtual void from_json(
const std::string &json);
86 virtual void validate(
bool subcall =
false)
const;
93 std::optional<std::string>
110 std::vector<std::shared_ptr<InterfaceFieldType>>
130 fields_.push_back(std::move(
fields));
140 fields_.push_back(
fields);
148 fields_.push_back(std::make_shared<InterfaceFieldType>(std::move(
fields)));
152 std::optional<std::string> name_;
153 std::vector<std::shared_ptr<InterfaceFieldType>> fields_;
InterfaceMessageType()
Constructor.
InterfaceFieldType representation for JSON transfer.
void set_name(const std::string &name)
Set name value.
virtual ~InterfaceMessageType()
Destructor.
void set_fields(const std::vector< std::shared_ptr< InterfaceFieldType >> &fields)
Set fields value.
virtual void validate(bool subcall=false) const
Validate if all required fields have been set.
virtual void to_json_value(rapidjson::Document &d, rapidjson::Value &v) const
Render object to JSON.
void addto_fields(const std::shared_ptr< InterfaceFieldType > &fields)
Add element to fields array.
virtual std::string to_json(bool pretty=false) const
Render object to JSON.
static std::string api_version()
Get version of implemented API.
std::vector< std::shared_ptr< InterfaceFieldType > > fields() const
Get fields value.
void addto_fields(const InterfaceFieldType &&fields)
Add element to fields array.
InterfaceMessageType representation for JSON transfer.
virtual void from_json_value(const rapidjson::Value &v)
Retrieve data from JSON string.
std::optional< std::string > name() const
Get name value.
void addto_fields(const std::shared_ptr< InterfaceFieldType > &&fields)
Add element to fields array.
virtual void from_json(const std::string &json)
Retrieve data from JSON string.