cloudbilling  v1
tier_rate.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: 2020-03-24, 00:22:17 UTC
18 // C++ generator version: 0.1.4
19 
20 // ----------------------------------------------------------------------------
21 // NOTE: This file is generated from Google APIs Discovery Service.
22 // Service:
23 // Cloud Billing API (cloudbilling/v1)
24 // Generated from:
25 // Version: v1
26 // Revision: 56
27 // Generated by:
28 // Tool: google-apis-code-generator 1.5.1
29 // C++: 0.1.4
30 #ifndef GOOGLE_CLOUDBILLING_API_TIER_RATE_H_
31 #define GOOGLE_CLOUDBILLING_API_TIER_RATE_H_
32 
33 #include "googleapis/base/macros.h"
34 #include "googleapis/client/data/jsoncpp_data.h"
35 #include "googleapis/strings/stringpiece.h"
36 
37 #include "google/cloudbilling_api/money.h"
38 
39 namespace Json {
40 class Value;
41 } // namespace Json
42 
43 namespace google_cloudbilling_api {
44 using namespace googleapis;
45 
51 class TierRate : public client::JsonCppData {
52  public:
58  static TierRate* New();
59 
65  explicit TierRate(const Json::Value& storage);
66 
72  explicit TierRate(Json::Value* storage);
73 
77  virtual ~TierRate();
78 
84  const StringPiece GetTypeName() const {
85  return StringPiece("google_cloudbilling_api::TierRate");
86  }
87 
93  bool has_start_usage_amount() const {
94  return Storage().isMember("startUsageAmount");
95  }
96 
101  MutableStorage()->removeMember("startUsageAmount");
102  }
103 
104 
108  double get_start_usage_amount() const {
109  const Json::Value& storage = Storage("startUsageAmount");
110  return client::JsonValueToCppValueHelper<double >(storage);
111  }
112 
122  void set_start_usage_amount(double value) {
123  client::SetJsonValueFromCppValueHelper<double >(
124  value, MutableStorage("startUsageAmount"));
125  }
126 
132  bool has_unit_price() const {
133  return Storage().isMember("unitPrice");
134  }
135 
140  MutableStorage()->removeMember("unitPrice");
141  }
142 
143 
147  const Money get_unit_price() const;
148 
158  Money mutable_unitPrice();
159 
160  private:
161  void operator=(const TierRate&);
162 }; // TierRate
163 } // namespace google_cloudbilling_api
164 #endif // GOOGLE_CLOUDBILLING_API_TIER_RATE_H_
void clear_unit_price()
Definition: tier_rate.h:139
bool has_start_usage_amount() const
Definition: tier_rate.h:93
void clear_start_usage_amount()
Definition: tier_rate.h:100
double get_start_usage_amount() const
Definition: tier_rate.h:108
const StringPiece GetTypeName() const
Definition: tier_rate.h:84
Definition: aggregation_info.h:39
Definition: tier_rate.h:51
Definition: money.h:51
bool has_unit_price() const
Definition: tier_rate.h:132
void set_start_usage_amount(double value)
Definition: tier_rate.h:122
Definition: aggregation_info.cc:42