16 #define RAPIDJSON_HAS_STDSTRING 1
17 #include <rapidjson/fwd.h>
57 virtual std::string
to_json(
bool pretty =
false)
const;
62 virtual void to_json_value(rapidjson::Document &d, rapidjson::Value &v)
const;
68 virtual void from_json(
const std::string &json);
84 virtual void validate(
bool subcall =
false)
const;
91 std::optional<std::string>
108 std::optional<std::string>
125 std::optional<std::string>
142 std::optional<std::string>
159 std::optional<std::string>
176 std::vector<std::string>
196 readers_.push_back(std::move(
readers));
211 std::shared_ptr<rapidjson::Document>
228 std::optional<std::string>
244 std::optional<std::string> kind_;
245 std::optional<std::string> apiVersion_;
246 std::optional<std::string> id_;
247 std::optional<std::string> type_;
248 std::optional<std::string> writer_;
249 std::vector<std::string> readers_;
250 std::shared_ptr<rapidjson::Document> data_;
251 std::optional<std::string> timestamp_;
InterfaceData representation for JSON transfer.
void addto_readers(const std::string &readers)
Add element to readers array.
virtual ~InterfaceData()
Destructor.
virtual void validate(bool subcall=false) const
Validate if all required fields have been set.
std::optional< std::string > timestamp() const
Get timestamp value.
void set_timestamp(const std::string ×tamp)
Set timestamp value.
static std::string api_version()
Get version of implemented API.
InterfaceData()
Constructor.
void set_kind(const std::string &kind)
Set kind value.
virtual std::string to_json(bool pretty=false) const
Render object to JSON.
std::optional< std::string > apiVersion() const
Get apiVersion value.
std::optional< std::string > type() const
Get type value.
virtual void from_json_value(const rapidjson::Value &v)
Retrieve data from JSON string.
void set_readers(const std::vector< std::string > &readers)
Set readers value.
void set_data(const std::shared_ptr< rapidjson::Document > &data)
Set data value.
virtual void to_json_value(rapidjson::Document &d, rapidjson::Value &v) const
Render object to JSON.
void set_apiVersion(const std::string &apiVersion)
Set apiVersion value.
std::optional< std::string > id() const
Get id value.
std::vector< std::string > readers() const
Get readers value.
std::shared_ptr< rapidjson::Document > data() const
Get data value.
std::optional< std::string > kind() const
Get kind value.
void set_type(const std::string &type)
Set type value.
virtual void from_json(const std::string &json)
Retrieve data from JSON string.
void set_id(const std::string &id)
Set id value.
std::optional< std::string > writer() const
Get writer value.
void set_writer(const std::string &writer)
Set writer value.
void addto_readers(const std::string &&readers)
Add element to readers array.