compute  v1
instance_group_manager.h
1 // Copyright 2010 Google Inc.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License"); you may not
4 // use this file except in compliance with the License. You may obtain a copy of
5 // the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12 // License for the specific language governing permissions and limitations under
13 // the License.
14 
15 // This code was generated by google-apis-code-generator 1.5.1
16 // Build date: 2018-10-08 17:45:39 UTC
17 // on: 2019-05-15, 03:08:54 UTC
18 // C++ generator version: 0.1.4
19 
20 // ----------------------------------------------------------------------------
21 // NOTE: This file is generated from Google APIs Discovery Service.
22 // Service:
23 // Compute Engine API (compute/v1)
24 // Generated from:
25 // Version: v1
26 // Revision: 214
27 // Generated by:
28 // Tool: google-apis-code-generator 1.5.1
29 // C++: 0.1.4
30 #ifndef GOOGLE_COMPUTE_API_INSTANCE_GROUP_MANAGER_H_
31 #define GOOGLE_COMPUTE_API_INSTANCE_GROUP_MANAGER_H_
32 
33 #include <string>
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"
38 
39 #include "google/compute_api/distribution_policy.h"
40 #include "google/compute_api/instance_group_manager_actions_summary.h"
41 #include "google/compute_api/instance_group_manager_auto_healing_policy.h"
42 #include "google/compute_api/instance_group_manager_status.h"
43 #include "google/compute_api/instance_group_manager_update_policy.h"
44 #include "google/compute_api/instance_group_manager_version.h"
45 #include "google/compute_api/named_port.h"
46 
47 namespace Json {
48 class Value;
49 } // namespace Json
50 
51 namespace google_compute_api {
52 using namespace googleapis;
53 
62 class InstanceGroupManager : public client::JsonCppData {
63  public:
69  static InstanceGroupManager* New();
70 
76  explicit InstanceGroupManager(const Json::Value& storage);
77 
83  explicit InstanceGroupManager(Json::Value* storage);
84 
88  virtual ~InstanceGroupManager();
89 
95  const StringPiece GetTypeName() const {
96  return StringPiece("google_compute_api::InstanceGroupManager");
97  }
98 
105  return Storage().isMember("autoHealingPolicies");
106  }
107 
112  MutableStorage()->removeMember("autoHealingPolicies");
113  }
114 
115 
120  const client::JsonCppArray<InstanceGroupManagerAutoHealingPolicy > get_auto_healing_policies() const;
121 
131  client::JsonCppArray<InstanceGroupManagerAutoHealingPolicy > mutable_autoHealingPolicies();
132 
138  bool has_base_instance_name() const {
139  return Storage().isMember("baseInstanceName");
140  }
141 
146  MutableStorage()->removeMember("baseInstanceName");
147  }
148 
149 
153  const StringPiece get_base_instance_name() const {
154  const Json::Value& v = Storage("baseInstanceName");
155  if (v == Json::Value::null) return StringPiece("");
156  return StringPiece(v.asCString());
157  }
158 
169  void set_base_instance_name(const StringPiece& value) {
170  *MutableStorage("baseInstanceName") = value.data();
171  }
172 
178  bool has_creation_timestamp() const {
179  return Storage().isMember("creationTimestamp");
180  }
181 
186  MutableStorage()->removeMember("creationTimestamp");
187  }
188 
189 
193  const StringPiece get_creation_timestamp() const {
194  const Json::Value& v = Storage("creationTimestamp");
195  if (v == Json::Value::null) return StringPiece("");
196  return StringPiece(v.asCString());
197  }
198 
207  void set_creation_timestamp(const StringPiece& value) {
208  *MutableStorage("creationTimestamp") = value.data();
209  }
210 
216  bool has_current_actions() const {
217  return Storage().isMember("currentActions");
218  }
219 
224  MutableStorage()->removeMember("currentActions");
225  }
226 
227 
232  const InstanceGroupManagerActionsSummary get_current_actions() const;
233 
243  InstanceGroupManagerActionsSummary mutable_currentActions();
244 
250  bool has_description() const {
251  return Storage().isMember("description");
252  }
253 
258  MutableStorage()->removeMember("description");
259  }
260 
261 
265  const StringPiece get_description() const {
266  const Json::Value& v = Storage("description");
267  if (v == Json::Value::null) return StringPiece("");
268  return StringPiece(v.asCString());
269  }
270 
279  void set_description(const StringPiece& value) {
280  *MutableStorage("description") = value.data();
281  }
282 
288  bool has_distribution_policy() const {
289  return Storage().isMember("distributionPolicy");
290  }
291 
296  MutableStorage()->removeMember("distributionPolicy");
297  }
298 
299 
304  const DistributionPolicy get_distribution_policy() const;
305 
315  DistributionPolicy mutable_distributionPolicy();
316 
322  bool has_fingerprint() const {
323  return Storage().isMember("fingerprint");
324  }
325 
330  MutableStorage()->removeMember("fingerprint");
331  }
332 
333 
337  const StringPiece get_fingerprint() const {
338  const Json::Value& v = Storage("fingerprint");
339  if (v == Json::Value::null) return StringPiece("");
340  return StringPiece(v.asCString());
341  }
342 
356  void set_fingerprint(const StringPiece& value) {
357  *MutableStorage("fingerprint") = value.data();
358  }
359 
365  bool has_id() const {
366  return Storage().isMember("id");
367  }
368 
372  void clear_id() {
373  MutableStorage()->removeMember("id");
374  }
375 
376 
380  uint64 get_id() const {
381  const Json::Value& storage = Storage("id");
382  return client::JsonValueToCppValueHelper<uint64 >(storage);
383  }
384 
393  void set_id(uint64 value) {
394  client::SetJsonValueFromCppValueHelper<uint64 >(
395  value, MutableStorage("id"));
396  }
397 
403  bool has_instance_group() const {
404  return Storage().isMember("instanceGroup");
405  }
406 
411  MutableStorage()->removeMember("instanceGroup");
412  }
413 
414 
418  const StringPiece get_instance_group() const {
419  const Json::Value& v = Storage("instanceGroup");
420  if (v == Json::Value::null) return StringPiece("");
421  return StringPiece(v.asCString());
422  }
423 
431  void set_instance_group(const StringPiece& value) {
432  *MutableStorage("instanceGroup") = value.data();
433  }
434 
440  bool has_instance_template() const {
441  return Storage().isMember("instanceTemplate");
442  }
443 
448  MutableStorage()->removeMember("instanceTemplate");
449  }
450 
451 
455  const StringPiece get_instance_template() const {
456  const Json::Value& v = Storage("instanceTemplate");
457  if (v == Json::Value::null) return StringPiece("");
458  return StringPiece(v.asCString());
459  }
460 
470  void set_instance_template(const StringPiece& value) {
471  *MutableStorage("instanceTemplate") = value.data();
472  }
473 
479  bool has_kind() const {
480  return Storage().isMember("kind");
481  }
482 
486  void clear_kind() {
487  MutableStorage()->removeMember("kind");
488  }
489 
490 
494  const StringPiece get_kind() const {
495  const Json::Value& v = Storage("kind");
496  if (v == Json::Value::null) return StringPiece("");
497  return StringPiece(v.asCString());
498  }
499 
508  void set_kind(const StringPiece& value) {
509  *MutableStorage("kind") = value.data();
510  }
511 
517  bool has_name() const {
518  return Storage().isMember("name");
519  }
520 
524  void clear_name() {
525  MutableStorage()->removeMember("name");
526  }
527 
528 
532  const StringPiece get_name() const {
533  const Json::Value& v = Storage("name");
534  if (v == Json::Value::null) return StringPiece("");
535  return StringPiece(v.asCString());
536  }
537 
546  void set_name(const StringPiece& value) {
547  *MutableStorage("name") = value.data();
548  }
549 
555  bool has_named_ports() const {
556  return Storage().isMember("namedPorts");
557  }
558 
563  MutableStorage()->removeMember("namedPorts");
564  }
565 
566 
570  const client::JsonCppArray<NamedPort > get_named_ports() const;
571 
581  client::JsonCppArray<NamedPort > mutable_namedPorts();
582 
588  bool has_region() const {
589  return Storage().isMember("region");
590  }
591 
595  void clear_region() {
596  MutableStorage()->removeMember("region");
597  }
598 
599 
603  const StringPiece get_region() const {
604  const Json::Value& v = Storage("region");
605  if (v == Json::Value::null) return StringPiece("");
606  return StringPiece(v.asCString());
607  }
608 
617  void set_region(const StringPiece& value) {
618  *MutableStorage("region") = value.data();
619  }
620 
626  bool has_self_link() const {
627  return Storage().isMember("selfLink");
628  }
629 
634  MutableStorage()->removeMember("selfLink");
635  }
636 
637 
641  const StringPiece get_self_link() const {
642  const Json::Value& v = Storage("selfLink");
643  if (v == Json::Value::null) return StringPiece("");
644  return StringPiece(v.asCString());
645  }
646 
655  void set_self_link(const StringPiece& value) {
656  *MutableStorage("selfLink") = value.data();
657  }
658 
664  bool has_status() const {
665  return Storage().isMember("status");
666  }
667 
671  void clear_status() {
672  MutableStorage()->removeMember("status");
673  }
674 
675 
679  const InstanceGroupManagerStatus get_status() const;
680 
688  InstanceGroupManagerStatus mutable_status();
689 
695  bool has_target_pools() const {
696  return Storage().isMember("targetPools");
697  }
698 
703  MutableStorage()->removeMember("targetPools");
704  }
705 
706 
710  const client::JsonCppArray<string > get_target_pools() const {
711  const Json::Value& storage = Storage("targetPools");
712  return client::JsonValueToCppValueHelper<client::JsonCppArray<string > >(storage);
713  }
714 
725  client::JsonCppArray<string > mutable_targetPools() {
726  Json::Value* storage = MutableStorage("targetPools");
727  return client::JsonValueToMutableCppValueHelper<client::JsonCppArray<string > >(storage);
728  }
729 
735  bool has_target_size() const {
736  return Storage().isMember("targetSize");
737  }
738 
743  MutableStorage()->removeMember("targetSize");
744  }
745 
746 
750  int32 get_target_size() const {
751  const Json::Value& storage = Storage("targetSize");
752  return client::JsonValueToCppValueHelper<int32 >(storage);
753  }
754 
764  void set_target_size(int32 value) {
765  client::SetJsonValueFromCppValueHelper<int32 >(
766  value, MutableStorage("targetSize"));
767  }
768 
774  bool has_update_policy() const {
775  return Storage().isMember("updatePolicy");
776  }
777 
782  MutableStorage()->removeMember("updatePolicy");
783  }
784 
785 
789  const InstanceGroupManagerUpdatePolicy get_update_policy() const;
790 
799  InstanceGroupManagerUpdatePolicy mutable_updatePolicy();
800 
806  bool has_versions() const {
807  return Storage().isMember("versions");
808  }
809 
813  void clear_versions() {
814  MutableStorage()->removeMember("versions");
815  }
816 
817 
821  const client::JsonCppArray<InstanceGroupManagerVersion > get_versions() const;
822 
839  client::JsonCppArray<InstanceGroupManagerVersion > mutable_versions();
840 
846  bool has_zone() const {
847  return Storage().isMember("zone");
848  }
849 
853  void clear_zone() {
854  MutableStorage()->removeMember("zone");
855  }
856 
857 
861  const StringPiece get_zone() const {
862  const Json::Value& v = Storage("zone");
863  if (v == Json::Value::null) return StringPiece("");
864  return StringPiece(v.asCString());
865  }
866 
875  void set_zone(const StringPiece& value) {
876  *MutableStorage("zone") = value.data();
877  }
878 
879  private:
880  void operator=(const InstanceGroupManager&);
881 }; // InstanceGroupManager
882 } // namespace google_compute_api
883 #endif // GOOGLE_COMPUTE_API_INSTANCE_GROUP_MANAGER_H_
void set_base_instance_name(const StringPiece &value)
Definition: instance_group_manager.h:169
bool has_name() const
Definition: instance_group_manager.h:517
void set_instance_template(const StringPiece &value)
Definition: instance_group_manager.h:470
bool has_kind() const
Definition: instance_group_manager.h:479
const StringPiece get_kind() const
Definition: instance_group_manager.h:494
Definition: instance_group_manager_actions_summary.h:50
uint64 get_id() const
Definition: instance_group_manager.h:380
void set_description(const StringPiece &value)
Definition: instance_group_manager.h:279
void set_zone(const StringPiece &value)
Definition: instance_group_manager.h:875
Definition: instance_group_manager.h:62
void clear_self_link()
Definition: instance_group_manager.h:633
void clear_target_pools()
Definition: instance_group_manager.h:702
void clear_instance_group()
Definition: instance_group_manager.h:410
const StringPiece get_description() const
Definition: instance_group_manager.h:265
bool has_zone() const
Definition: instance_group_manager.h:846
void clear_distribution_policy()
Definition: instance_group_manager.h:295
void clear_creation_timestamp()
Definition: instance_group_manager.h:185
void clear_target_size()
Definition: instance_group_manager.h:742
const StringPiece get_self_link() const
Definition: instance_group_manager.h:641
void set_name(const StringPiece &value)
Definition: instance_group_manager.h:546
bool has_target_size() const
Definition: instance_group_manager.h:735
void clear_versions()
Definition: instance_group_manager.h:813
const StringPiece get_fingerprint() const
Definition: instance_group_manager.h:337
bool has_named_ports() const
Definition: instance_group_manager.h:555
const StringPiece get_creation_timestamp() const
Definition: instance_group_manager.h:193
bool has_versions() const
Definition: instance_group_manager.h:806
const StringPiece GetTypeName() const
Definition: instance_group_manager.h:95
void set_id(uint64 value)
Definition: instance_group_manager.h:393
void clear_kind()
Definition: instance_group_manager.h:486
bool has_update_policy() const
Definition: instance_group_manager.h:774
client::JsonCppArray< string > mutable_targetPools()
Definition: instance_group_manager.h:725
void set_fingerprint(const StringPiece &value)
Definition: instance_group_manager.h:356
bool has_status() const
Definition: instance_group_manager.h:664
const StringPiece get_base_instance_name() const
Definition: instance_group_manager.h:153
bool has_distribution_policy() const
Definition: instance_group_manager.h:288
int32 get_target_size() const
Definition: instance_group_manager.h:750
bool has_fingerprint() const
Definition: instance_group_manager.h:322
Definition: instance_group_manager_status.h:49
void clear_zone()
Definition: instance_group_manager.h:853
void clear_base_instance_name()
Definition: instance_group_manager.h:145
void set_creation_timestamp(const StringPiece &value)
Definition: instance_group_manager.h:207
Definition: instance_group_manager_update_policy.h:52
bool has_auto_healing_policies() const
Definition: instance_group_manager.h:104
const StringPiece get_zone() const
Definition: instance_group_manager.h:861
const client::JsonCppArray< string > get_target_pools() const
Definition: instance_group_manager.h:710
bool has_id() const
Definition: instance_group_manager.h:365
const StringPiece get_name() const
Definition: instance_group_manager.h:532
void clear_instance_template()
Definition: instance_group_manager.h:447
bool has_base_instance_name() const
Definition: instance_group_manager.h:138
bool has_creation_timestamp() const
Definition: instance_group_manager.h:178
void clear_current_actions()
Definition: instance_group_manager.h:223
void clear_description()
Definition: instance_group_manager.h:257
void clear_update_policy()
Definition: instance_group_manager.h:781
Definition: accelerator_config.h:39
void clear_named_ports()
Definition: instance_group_manager.h:562
void clear_region()
Definition: instance_group_manager.h:595
bool has_self_link() const
Definition: instance_group_manager.h:626
void clear_auto_healing_policies()
Definition: instance_group_manager.h:111
bool has_current_actions() const
Definition: instance_group_manager.h:216
void clear_fingerprint()
Definition: instance_group_manager.h:329
void clear_id()
Definition: instance_group_manager.h:372
bool has_description() const
Definition: instance_group_manager.h:250
Definition: accelerator_config.cc:41
bool has_region() const
Definition: instance_group_manager.h:588
const StringPiece get_region() const
Definition: instance_group_manager.h:603
void clear_name()
Definition: instance_group_manager.h:524
void set_instance_group(const StringPiece &value)
Definition: instance_group_manager.h:431
bool has_instance_template() const
Definition: instance_group_manager.h:440
bool has_target_pools() const
Definition: instance_group_manager.h:695
void set_kind(const StringPiece &value)
Definition: instance_group_manager.h:508
void set_target_size(int32 value)
Definition: instance_group_manager.h:764
const StringPiece get_instance_template() const
Definition: instance_group_manager.h:455
Definition: distribution_policy.h:51
void set_self_link(const StringPiece &value)
Definition: instance_group_manager.h:655
const StringPiece get_instance_group() const
Definition: instance_group_manager.h:418
bool has_instance_group() const
Definition: instance_group_manager.h:403
void clear_status()
Definition: instance_group_manager.h:671
void set_region(const StringPiece &value)
Definition: instance_group_manager.h:617