Fawkes API  Fawkes Development Version
Goal Class Reference

Goal representation for JSON transfer. More...

#include <Goal.h>

Public Member Functions

 Goal ()
 Constructor. More...
 
 Goal (const std::string &json)
 Constructor from JSON. More...
 
 Goal (const rapidjson::Value &v)
 Constructor from JSON. More...
 
virtual ~Goal ()
 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 > sub_type () const
 Get sub-type value. More...
 
void set_sub_type (const std::string &sub_type)
 Set sub-type value. More...
 
std::optional< std::string > _class () const
 Get class value. More...
 
void set__class (const std::string &_class)
 Set class value. More...
 
std::optional< std::string > mode () const
 Get mode value. More...
 
void set_mode (const std::string &mode)
 Set mode value. More...
 
std::optional< std::string > outcome () const
 Get outcome value. More...
 
void set_outcome (const std::string &outcome)
 Set outcome value. More...
 
std::vector< std::string > error () const
 Get error value. More...
 
void set_error (const std::vector< std::string > &error)
 Set error value. More...
 
void addto_error (const std::string &&error)
 Add element to error array. More...
 
void addto_error (const std::string &error)
 Add element to error array. More...
 
std::optional< std::string > message () const
 Get message value. More...
 
void set_message (const std::string &message)
 Set message value. More...
 
std::optional< std::string > parent () const
 Get parent value. More...
 
void set_parent (const std::string &parent)
 Set parent value. More...
 
std::optional< int64_t > priority () const
 Get priority value. More...
 
void set_priority (const int64_t &priority)
 Set priority value. More...
 
std::vector< std::string > parameters () const
 Get parameters value. More...
 
void set_parameters (const std::vector< std::string > &parameters)
 Set parameters value. More...
 
void addto_parameters (const std::string &&parameters)
 Add element to parameters array. More...
 
void addto_parameters (const std::string &parameters)
 Add element to parameters array. More...
 
std::vector< std::string > meta () const
 Get meta value. More...
 
void set_meta (const std::vector< std::string > &meta)
 Set meta value. More...
 
void addto_meta (const std::string &&meta)
 Add element to meta array. More...
 
void addto_meta (const std::string &meta)
 Add element to meta array. More...
 
std::vector< std::string > plans () const
 Get plans value. More...
 
void set_plans (const std::vector< std::string > &plans)
 Set plans value. More...
 
void addto_plans (const std::string &&plans)
 Add element to plans array. More...
 
void addto_plans (const std::string &plans)
 Add element to plans array. More...
 
std::vector< std::string > required_resources () const
 Get required-resources value. More...
 
void set_required_resources (const std::vector< std::string > &required_resources)
 Set required-resources value. More...
 
void addto_required_resources (const std::string &&required_resources)
 Add element to required-resources array. More...
 
void addto_required_resources (const std::string &required_resources)
 Add element to required-resources array. More...
 
std::vector< std::string > acquired_resources () const
 Get acquired-resources value. More...
 
void set_acquired_resources (const std::vector< std::string > &acquired_resources)
 Set acquired-resources value. More...
 
void addto_acquired_resources (const std::string &&acquired_resources)
 Add element to acquired-resources array. More...
 
void addto_acquired_resources (const std::string &acquired_resources)
 Add element to acquired-resources array. More...
 

Static Public Member Functions

static std::string api_version ()
 Get version of implemented API. More...
 

Detailed Description

Goal representation for JSON transfer.

Definition at line 25 of file Goal.h.

Constructor & Destructor Documentation

◆ Goal() [1/3]

Goal::Goal ( )

Constructor.

Definition at line 22 of file Goal.cpp.

◆ Goal() [2/3]

Goal::Goal ( const std::string &  json)

Constructor from JSON.

Parameters
jsonJSON string to initialize from

Definition at line 26 of file Goal.cpp.

References from_json().

◆ Goal() [3/3]

Goal::Goal ( const rapidjson::Value &  v)

Constructor from JSON.

Parameters
vRapidJSON value object to initialize from.

Definition at line 31 of file Goal.cpp.

References from_json_value().

◆ ~Goal()

Goal::~Goal ( )
virtual

Destructor.

Definition at line 36 of file Goal.cpp.

Member Function Documentation

◆ _class()

std::optional<std::string> Goal::_class ( ) const
inline

Get class value.

Returns
class value

Definition at line 176 of file Goal.h.

Referenced by set__class().

◆ acquired_resources()

std::vector<std::string> Goal::acquired_resources ( ) const
inline

Get acquired-resources value.

Returns
acquired-resources value

Definition at line 453 of file Goal.h.

Referenced by addto_acquired_resources(), and set_acquired_resources().

◆ addto_acquired_resources() [1/2]

void Goal::addto_acquired_resources ( const std::string &&  acquired_resources)
inline

Add element to acquired-resources array.

Parameters
acquired_resourcesnew value

Definition at line 470 of file Goal.h.

References acquired_resources().

◆ addto_acquired_resources() [2/2]

void Goal::addto_acquired_resources ( const std::string &  acquired_resources)
inline

Add element to acquired-resources array.

The move-semantics version (std::move) should be preferred.

Parameters
acquired_resourcesnew value

Definition at line 480 of file Goal.h.

References acquired_resources().

◆ addto_error() [1/2]

void Goal::addto_error ( const std::string &&  error)
inline

Add element to error array.

Parameters
errornew value

Definition at line 244 of file Goal.h.

References error().

◆ addto_error() [2/2]

void Goal::addto_error ( const std::string &  error)
inline

Add element to error array.

The move-semantics version (std::move) should be preferred.

Parameters
errornew value

Definition at line 254 of file Goal.h.

References error().

◆ addto_meta() [1/2]

void Goal::addto_meta ( const std::string &&  meta)
inline

Add element to meta array.

Parameters
metanew value

Definition at line 365 of file Goal.h.

References meta().

◆ addto_meta() [2/2]

void Goal::addto_meta ( const std::string &  meta)
inline

Add element to meta array.

The move-semantics version (std::move) should be preferred.

Parameters
metanew value

Definition at line 375 of file Goal.h.

References meta().

◆ addto_parameters() [1/2]

void Goal::addto_parameters ( const std::string &&  parameters)
inline

Add element to parameters array.

Parameters
parametersnew value

Definition at line 330 of file Goal.h.

References parameters().

◆ addto_parameters() [2/2]

void Goal::addto_parameters ( const std::string &  parameters)
inline

Add element to parameters array.

The move-semantics version (std::move) should be preferred.

Parameters
parametersnew value

Definition at line 340 of file Goal.h.

References parameters().

◆ addto_plans() [1/2]

void Goal::addto_plans ( const std::string &&  plans)
inline

Add element to plans array.

Parameters
plansnew value

Definition at line 400 of file Goal.h.

References plans().

◆ addto_plans() [2/2]

void Goal::addto_plans ( const std::string &  plans)
inline

Add element to plans array.

The move-semantics version (std::move) should be preferred.

Parameters
plansnew value

Definition at line 410 of file Goal.h.

References plans().

◆ addto_required_resources() [1/2]

void Goal::addto_required_resources ( const std::string &&  required_resources)
inline

Add element to required-resources array.

Parameters
required_resourcesnew value

Definition at line 435 of file Goal.h.

References required_resources().

◆ addto_required_resources() [2/2]

void Goal::addto_required_resources ( const std::string &  required_resources)
inline

Add element to required-resources array.

The move-semantics version (std::move) should be preferred.

Parameters
required_resourcesnew value

Definition at line 445 of file Goal.h.

References required_resources().

◆ api_version()

static std::string Goal::api_version ( )
inlinestatic

Get version of implemented API.

Returns
string representation of version

Definition at line 47 of file Goal.h.

◆ apiVersion()

std::optional<std::string> Goal::apiVersion ( ) const
inline

Get apiVersion value.

Returns
apiVersion value

Definition at line 108 of file Goal.h.

Referenced by set_apiVersion().

◆ error()

std::vector<std::string> Goal::error ( ) const
inline

Get error value.

Returns
error value

Definition at line 227 of file Goal.h.

Referenced by addto_error(), and set_error().

◆ from_json()

void Goal::from_json ( const std::string &  json)
virtual

Retrieve data from JSON string.

Parameters
jsonJSON representation suitable for this object. Will allow partial assignment and not validate automaticaly.
See also
validate()

Definition at line 173 of file Goal.cpp.

References from_json_value().

Referenced by Goal().

◆ from_json_value()

void Goal::from_json_value ( const rapidjson::Value &  v)
virtual

Retrieve data from JSON string.

Parameters
vRapidJSON value suitable for this object. Will allow partial assignment and not validate automaticaly.
See also
validate()

Definition at line 182 of file Goal.cpp.

Referenced by from_json(), and Goal().

◆ id()

std::optional<std::string> Goal::id ( ) const
inline

Get id value.

Returns
id value

Definition at line 125 of file Goal.h.

Referenced by set_id().

◆ kind()

std::optional<std::string> Goal::kind ( ) const
inline

Get kind value.

Returns
kind value

Definition at line 91 of file Goal.h.

Referenced by set_kind().

◆ message()

std::optional<std::string> Goal::message ( ) const
inline

Get message value.

Returns
message value

Definition at line 262 of file Goal.h.

Referenced by set_message().

◆ meta()

std::vector<std::string> Goal::meta ( ) const
inline

Get meta value.

Returns
meta value

Definition at line 348 of file Goal.h.

Referenced by addto_meta(), and set_meta().

◆ mode()

std::optional<std::string> Goal::mode ( ) const
inline

Get mode value.

Returns
mode value

Definition at line 193 of file Goal.h.

Referenced by set_mode().

◆ outcome()

std::optional<std::string> Goal::outcome ( ) const
inline

Get outcome value.

Returns
outcome value

Definition at line 210 of file Goal.h.

Referenced by set_outcome().

◆ parameters()

std::vector<std::string> Goal::parameters ( ) const
inline

Get parameters value.

Returns
parameters value

Definition at line 313 of file Goal.h.

Referenced by addto_parameters(), and set_parameters().

◆ parent()

std::optional<std::string> Goal::parent ( ) const
inline

Get parent value.

Returns
parent value

Definition at line 279 of file Goal.h.

Referenced by set_parent().

◆ plans()

std::vector<std::string> Goal::plans ( ) const
inline

Get plans value.

Returns
plans value

Definition at line 383 of file Goal.h.

Referenced by addto_plans(), and set_plans().

◆ priority()

std::optional<int64_t> Goal::priority ( ) const
inline

Get priority value.

Returns
priority value

Definition at line 296 of file Goal.h.

Referenced by set_priority().

◆ required_resources()

std::vector<std::string> Goal::required_resources ( ) const
inline

Get required-resources value.

Returns
required-resources value

Definition at line 418 of file Goal.h.

Referenced by addto_required_resources(), and set_required_resources().

◆ set__class()

void Goal::set__class ( const std::string &  _class)
inline

Set class value.

Parameters
_classnew value

Definition at line 185 of file Goal.h.

References _class().

◆ set_acquired_resources()

void Goal::set_acquired_resources ( const std::vector< std::string > &  acquired_resources)
inline

Set acquired-resources value.

Parameters
acquired_resourcesnew value

Definition at line 462 of file Goal.h.

References acquired_resources().

◆ set_apiVersion()

void Goal::set_apiVersion ( const std::string &  apiVersion)
inline

Set apiVersion value.

Parameters
apiVersionnew value

Definition at line 117 of file Goal.h.

References apiVersion().

◆ set_error()

void Goal::set_error ( const std::vector< std::string > &  error)
inline

Set error value.

Parameters
errornew value

Definition at line 236 of file Goal.h.

References error().

◆ set_id()

void Goal::set_id ( const std::string &  id)
inline

Set id value.

Parameters
idnew value

Definition at line 134 of file Goal.h.

References id().

◆ set_kind()

void Goal::set_kind ( const std::string &  kind)
inline

Set kind value.

Parameters
kindnew value

Definition at line 100 of file Goal.h.

References kind().

◆ set_message()

void Goal::set_message ( const std::string &  message)
inline

Set message value.

Parameters
messagenew value

Definition at line 271 of file Goal.h.

References message().

◆ set_meta()

void Goal::set_meta ( const std::vector< std::string > &  meta)
inline

Set meta value.

Parameters
metanew value

Definition at line 357 of file Goal.h.

References meta().

◆ set_mode()

void Goal::set_mode ( const std::string &  mode)
inline

Set mode value.

Parameters
modenew value

Definition at line 202 of file Goal.h.

References mode().

◆ set_outcome()

void Goal::set_outcome ( const std::string &  outcome)
inline

Set outcome value.

Parameters
outcomenew value

Definition at line 219 of file Goal.h.

References outcome().

◆ set_parameters()

void Goal::set_parameters ( const std::vector< std::string > &  parameters)
inline

Set parameters value.

Parameters
parametersnew value

Definition at line 322 of file Goal.h.

References parameters().

◆ set_parent()

void Goal::set_parent ( const std::string &  parent)
inline

Set parent value.

Parameters
parentnew value

Definition at line 288 of file Goal.h.

References parent().

◆ set_plans()

void Goal::set_plans ( const std::vector< std::string > &  plans)
inline

Set plans value.

Parameters
plansnew value

Definition at line 392 of file Goal.h.

References plans().

◆ set_priority()

void Goal::set_priority ( const int64_t &  priority)
inline

Set priority value.

Parameters
prioritynew value

Definition at line 305 of file Goal.h.

References priority().

◆ set_required_resources()

void Goal::set_required_resources ( const std::vector< std::string > &  required_resources)
inline

Set required-resources value.

Parameters
required_resourcesnew value

Definition at line 427 of file Goal.h.

References required_resources().

◆ set_sub_type()

void Goal::set_sub_type ( const std::string &  sub_type)
inline

Set sub-type value.

Parameters
sub_typenew value

Definition at line 168 of file Goal.h.

References sub_type().

◆ set_type()

void Goal::set_type ( const std::string &  type)
inline

Set type value.

Parameters
typenew value

Definition at line 151 of file Goal.h.

References type().

◆ sub_type()

std::optional<std::string> Goal::sub_type ( ) const
inline

Get sub-type value.

Returns
sub-type value

Definition at line 159 of file Goal.h.

Referenced by set_sub_type().

◆ to_json()

std::string Goal::to_json ( bool  pretty = false) const
virtual

Render object to JSON.

Parameters
prettytrue to enable pretty printing (readable spacing)
Returns
JSON string

Definition at line 41 of file Goal.cpp.

References to_json_value().

◆ to_json_value()

void Goal::to_json_value ( rapidjson::Document &  d,
rapidjson::Value &  v 
) const
virtual

Render object to JSON.

Parameters
dRapidJSON document to retrieve allocator from
vRapidJSON value to add data to

Definition at line 60 of file Goal.cpp.

Referenced by to_json().

◆ type()

std::optional<std::string> Goal::type ( ) const
inline

Get type value.

Returns
type value

Definition at line 142 of file Goal.h.

Referenced by set_type().

◆ validate()

void Goal::validate ( bool  subcall = false) const
virtual

Validate if all required fields have been set.

Parameters
subcalltrue if this is called from another class, e.g., a sub-class or array holder. Will modify the kind of exception thrown.
Exceptions
std::vector<std::string>thrown if required information is missing and subcall is set to true. Contains a list of missing fields.
std::runtime_errorinformative message describing the missing fields

Definition at line 274 of file Goal.cpp.


The documentation for this class was generated from the following files: