30 #ifndef GOOGLE_CLOUDBILLING_API_SKU_H_ 31 #define GOOGLE_CLOUDBILLING_API_SKU_H_ 34 #include "googleapis/base/macros.h" 35 #include "googleapis/client/data/jsoncpp_data.h" 36 #include "googleapis/strings/stringpiece.h" 38 #include "google/cloudbilling_api/category.h" 39 #include "google/cloudbilling_api/pricing_info.h" 53 class Sku :
public client::JsonCppData {
67 explicit Sku(
const Json::Value& storage);
74 explicit Sku(Json::Value* storage);
87 return StringPiece(
"google_cloudbilling_api::Sku");
96 return Storage().isMember(
"category");
103 MutableStorage()->removeMember(
"category");
110 const Category get_category()
const;
128 return Storage().isMember(
"description");
135 MutableStorage()->removeMember(
"description");
143 const Json::Value& v = Storage(
"description");
144 if (v == Json::Value::null)
return StringPiece(
"");
145 return StringPiece(v.asCString());
157 *MutableStorage(
"description") = value.data();
166 return Storage().isMember(
"name");
173 MutableStorage()->removeMember(
"name");
181 const Json::Value& v = Storage(
"name");
182 if (v == Json::Value::null)
return StringPiece(
"");
183 return StringPiece(v.asCString());
195 *MutableStorage(
"name") = value.data();
204 return Storage().isMember(
"pricingInfo");
211 MutableStorage()->removeMember(
"pricingInfo");
218 const client::JsonCppArray<PricingInfo > get_pricing_info()
const;
228 client::JsonCppArray<PricingInfo > mutable_pricingInfo();
236 return Storage().isMember(
"serviceProviderName");
243 MutableStorage()->removeMember(
"serviceProviderName");
251 const Json::Value& v = Storage(
"serviceProviderName");
252 if (v == Json::Value::null)
return StringPiece(
"");
253 return StringPiece(v.asCString());
265 *MutableStorage(
"serviceProviderName") = value.data();
274 return Storage().isMember(
"serviceRegions");
281 MutableStorage()->removeMember(
"serviceRegions");
290 const Json::Value& storage = Storage(
"serviceRegions");
291 return client::JsonValueToCppValueHelper<client::JsonCppArray<string > >(storage);
306 Json::Value* storage = MutableStorage(
"serviceRegions");
307 return client::JsonValueToMutableCppValueHelper<client::JsonCppArray<string > >(storage);
316 return Storage().isMember(
"skuId");
323 MutableStorage()->removeMember(
"skuId");
331 const Json::Value& v = Storage(
"skuId");
332 if (v == Json::Value::null)
return StringPiece(
"");
333 return StringPiece(v.asCString());
345 *MutableStorage(
"skuId") = value.data();
349 void operator=(
const Sku&);
352 #endif // GOOGLE_CLOUDBILLING_API_SKU_H_
const StringPiece get_sku_id() const
Definition: sku.h:330
void clear_sku_id()
Definition: sku.h:322
bool has_pricing_info() const
Definition: sku.h:203
const StringPiece GetTypeName() const
Definition: sku.h:86
void set_description(const StringPiece &value)
Definition: sku.h:156
bool has_sku_id() const
Definition: sku.h:315
void clear_pricing_info()
Definition: sku.h:210
const StringPiece get_description() const
Definition: sku.h:142
const client::JsonCppArray< string > get_service_regions() const
Definition: sku.h:289
const StringPiece get_service_provider_name() const
Definition: sku.h:250
void clear_description()
Definition: sku.h:134
void set_name(const StringPiece &value)
Definition: sku.h:194
void clear_service_provider_name()
Definition: sku.h:242
bool has_category() const
Definition: sku.h:95
Definition: category.h:50
Definition: aggregation_info.h:39
bool has_service_provider_name() const
Definition: sku.h:235
void clear_name()
Definition: sku.h:172
void clear_category()
Definition: sku.h:102
bool has_name() const
Definition: sku.h:165
bool has_description() const
Definition: sku.h:127
bool has_service_regions() const
Definition: sku.h:273
const StringPiece get_name() const
Definition: sku.h:180
void set_service_provider_name(const StringPiece &value)
Definition: sku.h:264
client::JsonCppArray< string > mutable_serviceRegions()
Definition: sku.h:305
void clear_service_regions()
Definition: sku.h:280
Definition: aggregation_info.cc:42
void set_sku_id(const StringPiece &value)
Definition: sku.h:344