|
Fawkes API
Fawkes Development Version
|
InterfaceData representation for JSON transfer. More...
#include <InterfaceData.h>
Public Member Functions | |
| InterfaceData () | |
| Constructor. More... | |
| InterfaceData (const std::string &json) | |
| Constructor from JSON. More... | |
| InterfaceData (const rapidjson::Value &v) | |
| Constructor from JSON. More... | |
| virtual | ~InterfaceData () |
| Destructor. More... | |
| virtual std::string | to_json (bool pretty=false) const |
| Render object to JSON. More... | |
| virtual void | to_json_value (rapidjson::Document &d, rapidjson::Value &v) const |
| Render object to JSON. More... | |
| virtual void | from_json (const std::string &json) |
| Retrieve data from JSON string. More... | |
| virtual void | from_json_value (const rapidjson::Value &v) |
| Retrieve data from JSON string. More... | |
| virtual void | validate (bool subcall=false) const |
| Validate if all required fields have been set. More... | |
| std::optional< std::string > | kind () const |
| Get kind value. More... | |
| void | set_kind (const std::string &kind) |
| Set kind value. More... | |
| std::optional< std::string > | apiVersion () const |
| Get apiVersion value. More... | |
| void | set_apiVersion (const std::string &apiVersion) |
| Set apiVersion value. More... | |
| std::optional< std::string > | id () const |
| Get id value. More... | |
| void | set_id (const std::string &id) |
| Set id value. More... | |
| std::optional< std::string > | type () const |
| Get type value. More... | |
| void | set_type (const std::string &type) |
| Set type value. More... | |
| std::optional< std::string > | writer () const |
| Get writer value. More... | |
| void | set_writer (const std::string &writer) |
| Set writer value. More... | |
| std::vector< std::string > | readers () const |
| Get readers value. More... | |
| void | set_readers (const std::vector< std::string > &readers) |
| Set readers value. More... | |
| void | addto_readers (const std::string &&readers) |
| Add element to readers array. More... | |
| void | addto_readers (const std::string &readers) |
| Add element to readers array. More... | |
| std::shared_ptr< rapidjson::Document > | data () const |
| Get data value. More... | |
| void | set_data (const std::shared_ptr< rapidjson::Document > &data) |
| Set data value. More... | |
| std::optional< std::string > | timestamp () const |
| Get timestamp value. More... | |
| void | set_timestamp (const std::string ×tamp) |
| Set timestamp value. More... | |
Static Public Member Functions | |
| static std::string | api_version () |
| Get version of implemented API. More... | |
InterfaceData representation for JSON transfer.
Definition at line 26 of file InterfaceData.h.
| InterfaceData::InterfaceData | ( | ) |
Constructor.
Definition at line 23 of file InterfaceData.cpp.
| InterfaceData::InterfaceData | ( | const std::string & | json | ) |
Constructor from JSON.
| json | JSON string to initialize from |
Definition at line 27 of file InterfaceData.cpp.
References from_json().
| InterfaceData::InterfaceData | ( | const rapidjson::Value & | v | ) |
Constructor from JSON.
| v | RapidJSON value object to initialize from. |
Definition at line 32 of file InterfaceData.cpp.
References from_json_value().
|
virtual |
Destructor.
Definition at line 37 of file InterfaceData.cpp.
|
inline |
Add element to readers array.
| readers | new value |
Definition at line 194 of file InterfaceData.h.
References readers().
|
inline |
Add element to readers array.
The move-semantics version (std::move) should be preferred.
| readers | new value |
Definition at line 204 of file InterfaceData.h.
References readers().
|
inlinestatic |
Get version of implemented API.
Definition at line 48 of file InterfaceData.h.
|
inline |
Get apiVersion value.
Definition at line 109 of file InterfaceData.h.
Referenced by set_apiVersion().
|
inline |
Get data value.
Definition at line 212 of file InterfaceData.h.
Referenced by set_data().
|
virtual |
Retrieve data from JSON string.
| json | JSON representation suitable for this object. Will allow partial assignment and not validate automaticaly. |
Definition at line 112 of file InterfaceData.cpp.
References from_json_value().
Referenced by InterfaceData().
|
virtual |
Retrieve data from JSON string.
| v | RapidJSON value suitable for this object. Will allow partial assignment and not validate automaticaly. |
Definition at line 121 of file InterfaceData.cpp.
Referenced by from_json(), and InterfaceData().
|
inline |
Get id value.
Definition at line 126 of file InterfaceData.h.
Referenced by set_id().
|
inline |
Get kind value.
Definition at line 92 of file InterfaceData.h.
Referenced by set_kind().
|
inline |
Get readers value.
Definition at line 177 of file InterfaceData.h.
Referenced by addto_readers(), and set_readers().
|
inline |
Set apiVersion value.
| apiVersion | new value |
Definition at line 118 of file InterfaceData.h.
References apiVersion().
|
inline |
Set data value.
| data | new value |
Definition at line 221 of file InterfaceData.h.
References data().
|
inline |
Set id value.
| id | new value |
Definition at line 135 of file InterfaceData.h.
References id().
|
inline |
Set kind value.
| kind | new value |
Definition at line 101 of file InterfaceData.h.
References kind().
|
inline |
Set readers value.
| readers | new value |
Definition at line 186 of file InterfaceData.h.
References readers().
|
inline |
Set timestamp value.
| timestamp | new value |
Definition at line 238 of file InterfaceData.h.
References timestamp().
|
inline |
Set type value.
| type | new value |
Definition at line 152 of file InterfaceData.h.
References type().
|
inline |
Set writer value.
| writer | new value |
Definition at line 169 of file InterfaceData.h.
References writer().
|
inline |
Get timestamp value.
Definition at line 229 of file InterfaceData.h.
Referenced by set_timestamp().
|
virtual |
Render object to JSON.
| pretty | true to enable pretty printing (readable spacing) |
Definition at line 42 of file InterfaceData.cpp.
References to_json_value(), and writer().
|
virtual |
Render object to JSON.
| d | RapidJSON document to retrieve allocator from |
| v | RapidJSON value to add data to |
Definition at line 61 of file InterfaceData.cpp.
Referenced by to_json().
|
inline |
Get type value.
Definition at line 143 of file InterfaceData.h.
Referenced by set_type().
|
virtual |
Validate if all required fields have been set.
| subcall | true if this is called from another class, e.g., a sub-class or array holder. Will modify the kind of exception thrown. |
| std::vector<std::string> | thrown if required information is missing and subcall is set to true. Contains a list of missing fields. |
| std::runtime_error | informative message describing the missing fields |
Definition at line 157 of file InterfaceData.cpp.
|
inline |
Get writer value.
Definition at line 160 of file InterfaceData.h.
Referenced by set_writer(), and to_json().