30 #ifndef GOOGLE_CLOUDBILLING_API_PRICING_EXPRESSION_H_ 31 #define GOOGLE_CLOUDBILLING_API_PRICING_EXPRESSION_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/tier_rate.h" 102 return StringPiece(
"google_cloudbilling_api::PricingExpression");
111 return Storage().isMember(
"baseUnit");
118 MutableStorage()->removeMember(
"baseUnit");
126 const Json::Value& v = Storage(
"baseUnit");
127 if (v == Json::Value::null)
return StringPiece(
"");
128 return StringPiece(v.asCString());
140 *MutableStorage(
"baseUnit") = value.data();
150 return Storage().isMember(
"baseUnitConversionFactor");
157 MutableStorage()->removeMember(
"baseUnitConversionFactor");
165 const Json::Value& storage = Storage(
"baseUnitConversionFactor");
166 return client::JsonValueToCppValueHelper<double >(storage);
181 client::SetJsonValueFromCppValueHelper<double >(
182 value, MutableStorage(
"baseUnitConversionFactor"));
191 return Storage().isMember(
"baseUnitDescription");
198 MutableStorage()->removeMember(
"baseUnitDescription");
206 const Json::Value& v = Storage(
"baseUnitDescription");
207 if (v == Json::Value::null)
return StringPiece(
"");
208 return StringPiece(v.asCString());
220 *MutableStorage(
"baseUnitDescription") = value.data();
229 return Storage().isMember(
"displayQuantity");
236 MutableStorage()->removeMember(
"displayQuantity");
244 const Json::Value& storage = Storage(
"displayQuantity");
245 return client::JsonValueToCppValueHelper<double >(storage);
263 client::SetJsonValueFromCppValueHelper<double >(
264 value, MutableStorage(
"displayQuantity"));
273 return Storage().isMember(
"tieredRates");
280 MutableStorage()->removeMember(
"tieredRates");
287 const client::JsonCppArray<TierRate > get_tiered_rates()
const;
299 client::JsonCppArray<TierRate > mutable_tieredRates();
307 return Storage().isMember(
"usageUnit");
314 MutableStorage()->removeMember(
"usageUnit");
322 const Json::Value& v = Storage(
"usageUnit");
323 if (v == Json::Value::null)
return StringPiece(
"");
324 return StringPiece(v.asCString());
336 *MutableStorage(
"usageUnit") = value.data();
345 return Storage().isMember(
"usageUnitDescription");
352 MutableStorage()->removeMember(
"usageUnitDescription");
360 const Json::Value& v = Storage(
"usageUnitDescription");
361 if (v == Json::Value::null)
return StringPiece(
"");
362 return StringPiece(v.asCString());
374 *MutableStorage(
"usageUnitDescription") = value.data();
381 #endif // GOOGLE_CLOUDBILLING_API_PRICING_EXPRESSION_H_ double get_base_unit_conversion_factor() const
Definition: pricing_expression.h:164
const StringPiece get_usage_unit_description() const
Definition: pricing_expression.h:359
bool has_display_quantity() const
Definition: pricing_expression.h:228
void clear_usage_unit_description()
Definition: pricing_expression.h:351
void set_display_quantity(double value)
Definition: pricing_expression.h:262
void set_base_unit_conversion_factor(double value)
Definition: pricing_expression.h:180
bool has_tiered_rates() const
Definition: pricing_expression.h:272
bool has_usage_unit_description() const
Definition: pricing_expression.h:344
void set_usage_unit(const StringPiece &value)
Definition: pricing_expression.h:335
void set_base_unit_description(const StringPiece &value)
Definition: pricing_expression.h:219
bool has_base_unit() const
Definition: pricing_expression.h:110
bool has_base_unit_conversion_factor() const
Definition: pricing_expression.h:149
const StringPiece GetTypeName() const
Definition: pricing_expression.h:101
const StringPiece get_base_unit() const
Definition: pricing_expression.h:125
const StringPiece get_usage_unit() const
Definition: pricing_expression.h:321
void clear_base_unit()
Definition: pricing_expression.h:117
const StringPiece get_base_unit_description() const
Definition: pricing_expression.h:205
void clear_base_unit_description()
Definition: pricing_expression.h:197
bool has_base_unit_description() const
Definition: pricing_expression.h:190
Definition: aggregation_info.h:39
double get_display_quantity() const
Definition: pricing_expression.h:243
void set_base_unit(const StringPiece &value)
Definition: pricing_expression.h:139
void clear_tiered_rates()
Definition: pricing_expression.h:279
void set_usage_unit_description(const StringPiece &value)
Definition: pricing_expression.h:373
void clear_base_unit_conversion_factor()
Definition: pricing_expression.h:156
bool has_usage_unit() const
Definition: pricing_expression.h:306
void clear_display_quantity()
Definition: pricing_expression.h:235
Definition: aggregation_info.cc:42
void clear_usage_unit()
Definition: pricing_expression.h:313
Definition: pricing_expression.h:68