30 #ifndef GOOGLE_DEPLOYMENTMANAGER_API_POLICY_H_ 31 #define GOOGLE_DEPLOYMENTMANAGER_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/deploymentmanager_api/audit_config.h" 40 #include "google/deploymentmanager_api/binding.h" 41 #include "google/deploymentmanager_api/rule.h" 82 class Policy :
public client::JsonCppData {
96 explicit Policy(
const Json::Value& storage);
103 explicit Policy(Json::Value* storage);
116 return StringPiece(
"google_deploymentmanager_api::Policy");
125 return Storage().isMember(
"auditConfigs");
132 MutableStorage()->removeMember(
"auditConfigs");
139 const client::JsonCppArray<AuditConfig > get_audit_configs()
const;
149 client::JsonCppArray<AuditConfig > mutable_auditConfigs();
157 return Storage().isMember(
"bindings");
164 MutableStorage()->removeMember(
"bindings");
171 const client::JsonCppArray<Binding > get_bindings()
const;
182 client::JsonCppArray<Binding > mutable_bindings();
190 return Storage().isMember(
"etag");
197 MutableStorage()->removeMember(
"etag");
205 const Json::Value& v = Storage(
"etag");
206 if (v == Json::Value::null)
return StringPiece(
"");
207 return StringPiece(v.asCString());
227 *MutableStorage(
"etag") = value.data();
236 return Storage().isMember(
"iamOwned");
243 MutableStorage()->removeMember(
"iamOwned");
251 const Json::Value& storage = Storage(
"iamOwned");
252 return client::JsonValueToCppValueHelper<bool >(storage);
260 client::SetJsonValueFromCppValueHelper<bool >(
261 value, MutableStorage(
"iamOwned"));
270 return Storage().isMember(
"rules");
277 MutableStorage()->removeMember(
"rules");
284 const client::JsonCppArray<Rule > get_rules()
const;
299 client::JsonCppArray<Rule > mutable_rules();
307 return Storage().isMember(
"version");
314 MutableStorage()->removeMember(
"version");
322 const Json::Value& storage = Storage(
"version");
323 return client::JsonValueToCppValueHelper<int32 >(storage);
336 client::SetJsonValueFromCppValueHelper<int32 >(
337 value, MutableStorage(
"version"));
341 void operator=(
const Policy&);
344 #endif // GOOGLE_DEPLOYMENTMANAGER_API_POLICY_H_ const StringPiece get_etag() const
Definition: policy.h:204
void clear_iam_owned()
Definition: policy.h:242
bool get_iam_owned() const
Definition: policy.h:250
void clear_version()
Definition: policy.h:313
void clear_bindings()
Definition: policy.h:163
void clear_etag()
Definition: policy.h:196
void set_iam_owned(bool value)
Definition: policy.h:259
void set_version(int32 value)
Definition: policy.h:335
bool has_version() const
Definition: policy.h:306
void clear_rules()
Definition: policy.h:276
Definition: audit_config.h:40
bool has_iam_owned() const
Definition: policy.h:235
bool has_audit_configs() const
Definition: policy.h:124
Definition: audit_config.cc:42
bool has_etag() const
Definition: policy.h:189
void set_etag(const StringPiece &value)
Definition: policy.h:226
void clear_audit_configs()
Definition: policy.h:131
int32 get_version() const
Definition: policy.h:321
bool has_rules() const
Definition: policy.h:269
bool has_bindings() const
Definition: policy.h:156
const StringPiece GetTypeName() const
Definition: policy.h:115