30 #ifndef GOOGLE_CLOUDBILLING_API_POLICY_H_ 31 #define GOOGLE_CLOUDBILLING_API_POLICY_H_ 34 #include "googleapis/base/integral_types.h" 35 #include "googleapis/base/macros.h" 36 #include "googleapis/client/data/jsoncpp_data.h" 37 #include "googleapis/strings/stringpiece.h" 39 #include "google/cloudbilling_api/audit_config.h" 40 #include "google/cloudbilling_api/binding.h" 135 class Policy :
public client::JsonCppData {
149 explicit Policy(
const Json::Value& storage);
156 explicit Policy(Json::Value* storage);
169 return StringPiece(
"google_cloudbilling_api::Policy");
178 return Storage().isMember(
"auditConfigs");
185 MutableStorage()->removeMember(
"auditConfigs");
192 const client::JsonCppArray<AuditConfig > get_audit_configs()
const;
202 client::JsonCppArray<AuditConfig > mutable_auditConfigs();
210 return Storage().isMember(
"bindings");
217 MutableStorage()->removeMember(
"bindings");
224 const client::JsonCppArray<Binding > get_bindings()
const;
236 client::JsonCppArray<Binding > mutable_bindings();
244 return Storage().isMember(
"etag");
251 MutableStorage()->removeMember(
"etag");
259 const Json::Value& v = Storage(
"etag");
260 if (v == Json::Value::null)
return StringPiece(
"");
261 return StringPiece(v.asCString());
288 *MutableStorage(
"etag") = value.data();
297 return Storage().isMember(
"version");
304 MutableStorage()->removeMember(
"version");
312 const Json::Value& storage = Storage(
"version");
313 return client::JsonValueToCppValueHelper<int32 >(storage);
344 client::SetJsonValueFromCppValueHelper<int32 >(
345 value, MutableStorage(
"version"));
349 void operator=(
const Policy&);
352 #endif // GOOGLE_CLOUDBILLING_API_POLICY_H_ bool has_etag() const
Definition: policy.h:243
void set_version(int32 value)
Definition: policy.h:343
void clear_audit_configs()
Definition: policy.h:184
const StringPiece GetTypeName() const
Definition: policy.h:168
const StringPiece get_etag() const
Definition: policy.h:258
bool has_bindings() const
Definition: policy.h:209
void clear_bindings()
Definition: policy.h:216
void clear_version()
Definition: policy.h:303
int32 get_version() const
Definition: policy.h:311
Definition: aggregation_info.h:39
void clear_etag()
Definition: policy.h:250
bool has_audit_configs() const
Definition: policy.h:177
bool has_version() const
Definition: policy.h:296
Definition: aggregation_info.cc:42
void set_etag(const StringPiece &value)
Definition: policy.h:287