30 #ifndef GOOGLE_DATAFLOW_API_STEP_H_ 31 #define GOOGLE_DATAFLOW_API_STEP_H_ 34 #include "googleapis/base/macros.h" 35 #include "googleapis/client/data/jsoncpp_data.h" 36 #include "googleapis/strings/stringpiece.h" 73 class Step :
public client::JsonCppData {
87 explicit Step(
const Json::Value& storage);
94 explicit Step(Json::Value* storage);
107 return StringPiece(
"google_dataflow_api::Step");
116 return Storage().isMember(
"kind");
123 MutableStorage()->removeMember(
"kind");
131 const Json::Value& v = Storage(
"kind");
132 if (v == Json::Value::null)
return StringPiece(
"");
133 return StringPiece(v.asCString());
144 *MutableStorage(
"kind") = value.data();
153 return Storage().isMember(
"name");
160 MutableStorage()->removeMember(
"name");
168 const Json::Value& v = Storage(
"name");
169 if (v == Json::Value::null)
return StringPiece(
"");
170 return StringPiece(v.asCString());
182 *MutableStorage(
"name") = value.data();
191 return Storage().isMember(
"properties");
198 MutableStorage()->removeMember(
"properties");
205 const client::JsonCppAssociativeArray<client::JsonCppData >
get_properties()
const {
206 const Json::Value& storage = Storage(
"properties");
207 return client::JsonValueToCppValueHelper<client::JsonCppAssociativeArray<client::JsonCppData > >(storage);
221 Json::Value* storage = MutableStorage(
"properties");
222 return client::JsonValueToMutableCppValueHelper<client::JsonCppAssociativeArray<client::JsonCppData > >(storage);
226 void operator=(
const Step&);
229 #endif // GOOGLE_DATAFLOW_API_STEP_H_ const StringPiece get_kind() const
Definition: step.h:130
bool has_name() const
Definition: step.h:152
void set_name(const StringPiece &value)
Definition: step.h:181
void clear_properties()
Definition: step.h:197
const StringPiece GetTypeName() const
Definition: step.h:106
void clear_kind()
Definition: step.h:122
void set_kind(const StringPiece &value)
Definition: step.h:143
const client::JsonCppAssociativeArray< client::JsonCppData > get_properties() const
Definition: step.h:205
Definition: approximate_progress.h:40
void clear_name()
Definition: step.h:159
client::JsonCppAssociativeArray< client::JsonCppData > mutable_properties()
Definition: step.h:220
bool has_kind() const
Definition: step.h:115
const StringPiece get_name() const
Definition: step.h:167
Definition: approximate_progress.cc:42
bool has_properties() const
Definition: step.h:190