compute  v1
instance_group_manager_version.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_VERSION_H_
31 #define GOOGLE_COMPUTE_API_INSTANCE_GROUP_MANAGER_VERSION_H_
32 
33 #include <string>
34 #include "googleapis/base/macros.h"
35 #include "googleapis/client/data/jsoncpp_data.h"
36 #include "googleapis/strings/stringpiece.h"
37 
38 #include "google/compute_api/fixed_or_percent.h"
39 
40 namespace Json {
41 class Value;
42 } // namespace Json
43 
44 namespace google_compute_api {
45 using namespace googleapis;
46 
52 class InstanceGroupManagerVersion : public client::JsonCppData {
53  public:
59  static InstanceGroupManagerVersion* New();
60 
66  explicit InstanceGroupManagerVersion(const Json::Value& storage);
67 
73  explicit InstanceGroupManagerVersion(Json::Value* storage);
74 
78  virtual ~InstanceGroupManagerVersion();
79 
85  const StringPiece GetTypeName() const {
86  return StringPiece("google_compute_api::InstanceGroupManagerVersion");
87  }
88 
94  bool has_instance_template() const {
95  return Storage().isMember("instanceTemplate");
96  }
97 
102  MutableStorage()->removeMember("instanceTemplate");
103  }
104 
105 
109  const StringPiece get_instance_template() const {
110  const Json::Value& v = Storage("instanceTemplate");
111  if (v == Json::Value::null) return StringPiece("");
112  return StringPiece(v.asCString());
113  }
114 
124  void set_instance_template(const StringPiece& value) {
125  *MutableStorage("instanceTemplate") = value.data();
126  }
127 
133  bool has_name() const {
134  return Storage().isMember("name");
135  }
136 
140  void clear_name() {
141  MutableStorage()->removeMember("name");
142  }
143 
144 
148  const StringPiece get_name() const {
149  const Json::Value& v = Storage("name");
150  if (v == Json::Value::null) return StringPiece("");
151  return StringPiece(v.asCString());
152  }
153 
162  void set_name(const StringPiece& value) {
163  *MutableStorage("name") = value.data();
164  }
165 
171  bool has_target_size() const {
172  return Storage().isMember("targetSize");
173  }
174 
179  MutableStorage()->removeMember("targetSize");
180  }
181 
182 
186  const FixedOrPercent get_target_size() const;
187 
205  FixedOrPercent mutable_targetSize();
206 
207  private:
208  void operator=(const InstanceGroupManagerVersion&);
209 }; // InstanceGroupManagerVersion
210 } // namespace google_compute_api
211 #endif // GOOGLE_COMPUTE_API_INSTANCE_GROUP_MANAGER_VERSION_H_
const StringPiece get_name() const
Definition: instance_group_manager_version.h:148
const StringPiece GetTypeName() const
Definition: instance_group_manager_version.h:85
const StringPiece get_instance_template() const
Definition: instance_group_manager_version.h:109
bool has_name() const
Definition: instance_group_manager_version.h:133
void set_name(const StringPiece &value)
Definition: instance_group_manager_version.h:162
bool has_instance_template() const
Definition: instance_group_manager_version.h:94
Definition: accelerator_config.h:39
void clear_instance_template()
Definition: instance_group_manager_version.h:101
void set_instance_template(const StringPiece &value)
Definition: instance_group_manager_version.h:124
Definition: fixed_or_percent.h:50
Definition: accelerator_config.cc:41
void clear_name()
Definition: instance_group_manager_version.h:140
bool has_target_size() const
Definition: instance_group_manager_version.h:171
Definition: instance_group_manager_version.h:52
void clear_target_size()
Definition: instance_group_manager_version.h:178