cloudbilling  v1
cloudbilling_service.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 //------------------------------------------------------------------------------
16 // This code was generated by google-apis-code-generator 1.5.1
17 // Build date: 2018-10-08 17:45:39 UTC
18 // on: 2020-03-24, 00:22:17 UTC
19 // C++ generator version: 0.1.4
20 //
21 // Changes to this file may cause incorrect behavior and will be lost if
22 // the code is regenerated.
23 //------------------------------------------------------------------------------
24 #ifndef GOOGLE_CLOUDBILLING_API_CLOUDBILLING_SERVICE_H_
25 #define GOOGLE_CLOUDBILLING_API_CLOUDBILLING_SERVICE_H_
26 
27 #include <string>
28 #include "googleapis/base/integral_types.h"
29 #include "googleapis/base/macros.h"
30 #include "googleapis/client/service/client_service.h"
31 #include "googleapis/client/service/service_request_pager.h"
32 #include "googleapis/client/util/status.h"
33 #include "googleapis/client/util/uri_template.h"
34 
35 #include "google/cloudbilling_api/billing_account.h"
36 #include "google/cloudbilling_api/list_billing_accounts_response.h"
37 #include "google/cloudbilling_api/list_project_billing_info_response.h"
38 #include "google/cloudbilling_api/list_services_response.h"
39 #include "google/cloudbilling_api/list_skus_response.h"
40 #include "google/cloudbilling_api/policy.h"
41 #include "google/cloudbilling_api/project_billing_info.h"
42 #include "google/cloudbilling_api/set_iam_policy_request.h"
43 #include "google/cloudbilling_api/test_iam_permissions_request.h"
44 #include "google/cloudbilling_api/test_iam_permissions_response.h"
45 
46 
47 namespace google_cloudbilling_api {
48 using namespace googleapis;
79 class CloudbillingService;
80 
89  : public client::ClientServiceRequest {
90  public:
113  const client::ClientService* service,
114  client::AuthorizationCredential* credential,
115  client::HttpRequest::HttpMethod method,
116  const StringPiece& uri_template);
117 
122 
123 
127  void clear_xgafv() {
128  _have_xgafv_ = false;
129  client::ClearCppValueHelper(&xgafv_);
130  }
131 
132 
138  const string& get_xgafv() const { return xgafv_; }
139 
145  string* mutable_$Xgafv() {
146  _have_xgafv_ = true;
147  return &xgafv_;
148  }
149 
150 
156  void set_xgafv(const string& value) {
157  _have_xgafv_ = true;
158  xgafv_ = value;
159  }
160 
161 
162 
167  _have_access_token_ = false;
168  client::ClearCppValueHelper(&access_token_);
169  }
170 
171 
177  const string& get_access_token() const { return access_token_; }
178 
186  _have_access_token_ = true;
187  return &access_token_;
188  }
189 
190 
196  void set_access_token(const string& value) {
197  _have_access_token_ = true;
198  access_token_ = value;
199  }
200 
201 
202 
206  void clear_alt() {
207  _have_alt_ = false;
208  client::ClearCppValueHelper(&alt_);
209  }
210 
211 
217  const string& get_alt() const { return alt_; }
218 
224  string* mutable_alt() {
225  _have_alt_ = true;
226  return &alt_;
227  }
228 
229 
235  void set_alt(const string& value) {
236  _have_alt_ = true;
237  alt_ = value;
238  }
239 
240 
241 
245  void clear_callback() {
246  _have_callback_ = false;
247  client::ClearCppValueHelper(&callback_);
248  }
249 
250 
256  const string& get_callback() const { return callback_; }
257 
263  string* mutable_callback() {
264  _have_callback_ = true;
265  return &callback_;
266  }
267 
268 
274  void set_callback(const string& value) {
275  _have_callback_ = true;
276  callback_ = value;
277  }
278 
279 
280 
284  void clear_fields() {
285  _have_fields_ = false;
286  client::ClearCppValueHelper(&fields_);
287  }
288 
289 
295  const string& get_fields() const { return fields_; }
296 
302  string* mutable_fields() {
303  _have_fields_ = true;
304  return &fields_;
305  }
306 
307 
314  void set_fields(const string& value) {
315  _have_fields_ = true;
316  fields_ = value;
317  }
318 
319 
320 
324  void clear_key() {
325  _have_key_ = false;
326  client::ClearCppValueHelper(&key_);
327  }
328 
329 
335  const string& get_key() const { return key_; }
336 
342  string* mutable_key() {
343  _have_key_ = true;
344  return &key_;
345  }
346 
347 
355  void set_key(const string& value) {
356  _have_key_ = true;
357  key_ = value;
358  }
359 
360 
361 
366  _have_oauth_token_ = false;
367  client::ClearCppValueHelper(&oauth_token_);
368  }
369 
370 
376  const string& get_oauth_token() const { return oauth_token_; }
377 
384  string* mutable_oauthToken() {
385  _have_oauth_token_ = true;
386  return &oauth_token_;
387  }
388 
389 
395  void set_oauth_token(const string& value) {
396  _have_oauth_token_ = true;
397  oauth_token_ = value;
398  }
399 
400 
401 
406  _have_pretty_print_ = false;
407  client::ClearCppValueHelper(&pretty_print_);
408  }
409 
410 
416  bool get_pretty_print() const { return pretty_print_; }
417 
423  void set_pretty_print(bool value) {
424  _have_pretty_print_ = true;
425  pretty_print_ = value;
426  }
427 
432  _have_quota_user_ = false;
433  client::ClearCppValueHelper(&quota_user_);
434  }
435 
436 
442  const string& get_quota_user() const { return quota_user_; }
443 
450  string* mutable_quotaUser() {
451  _have_quota_user_ = true;
452  return &quota_user_;
453  }
454 
455 
463  void set_quota_user(const string& value) {
464  _have_quota_user_ = true;
465  quota_user_ = value;
466  }
467 
468 
469 
474  _have_upload_type_ = false;
475  client::ClearCppValueHelper(&upload_type_);
476  }
477 
478 
484  const string& get_upload_type() const { return upload_type_; }
485 
492  string* mutable_uploadType() {
493  _have_upload_type_ = true;
494  return &upload_type_;
495  }
496 
497 
504  void set_upload_type(const string& value) {
505  _have_upload_type_ = true;
506  upload_type_ = value;
507  }
508 
509 
510 
515  _have_upload_protocol_ = false;
516  client::ClearCppValueHelper(&upload_protocol_);
517  }
518 
519 
525  const string& get_upload_protocol() const { return upload_protocol_; }
526 
534  _have_upload_protocol_ = true;
535  return &upload_protocol_;
536  }
537 
538 
544  void set_upload_protocol(const string& value) {
545  _have_upload_protocol_ = true;
546  upload_protocol_ = value;
547  }
548 
559  virtual util::Status AppendVariable(
560  const StringPiece& variable_name,
561  const client::UriTemplateConfig& config,
562  string* target);
563 
569  virtual util::Status AppendOptionalQueryParameters(string* target);
570 
571 
572  protected:
578  void AddJsonContentToRequest(const client::JsonCppData *content);
579 
580  private:
581  string xgafv_;
582  string access_token_;
583  string alt_;
584  string callback_;
585  string fields_;
586  string key_;
587  string oauth_token_;
588  bool pretty_print_;
589  string quota_user_;
590  string upload_type_;
591  string upload_protocol_;
592  bool _have_xgafv_ : 1;
593  bool _have_access_token_ : 1;
594  bool _have_alt_ : 1;
595  bool _have_callback_ : 1;
596  bool _have_fields_ : 1;
597  bool _have_key_ : 1;
598  bool _have_oauth_token_ : 1;
599  bool _have_pretty_print_ : 1;
600  bool _have_quota_user_ : 1;
601  bool _have_upload_type_ : 1;
602  bool _have_upload_protocol_ : 1;
603 
604  DISALLOW_COPY_AND_ASSIGN(CloudbillingServiceBaseRequest);
605 };
606 
607 
608 
622  public:
632  const CloudbillingService* _service_,
633  client::AuthorizationCredential* _credential_,
634  const BillingAccount& _content_);
635 
640 
652  BillingAccount* data) {
653  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
654  }
655 
656  private:
657  string _content_;
658  DISALLOW_COPY_AND_ASSIGN(BillingAccountsResource_CreateMethod);
659 };
660 
674  public:
686  const CloudbillingService* _service_,
687  client::AuthorizationCredential* _credential_,
688  const absl::string_view& name);
689 
694 
695 
705  virtual util::Status AppendVariable(
706  const StringPiece& variable_name,
707  const client::UriTemplateConfig& config,
708  string* target);
709 
710 
722  BillingAccount* data) {
723  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
724  }
725 
726  private:
727  string name_;
728  DISALLOW_COPY_AND_ASSIGN(BillingAccountsResource_GetMethod);
729 };
730 
744  public:
756  const CloudbillingService* _service_,
757  client::AuthorizationCredential* _credential_,
758  const absl::string_view& resource);
759 
764 
765 
771  _have_options_requested_policy_version_ = false;
772  client::ClearCppValueHelper(&options_requested_policy_version_);
773  }
774 
775 
782  int32 get_options_requested_policy_version() const { return options_requested_policy_version_; }
783 
799  _have_options_requested_policy_version_ = true;
800  options_requested_policy_version_ = value;
801  }
802 
812  virtual util::Status AppendVariable(
813  const StringPiece& variable_name,
814  const client::UriTemplateConfig& config,
815  string* target);
816 
822  virtual util::Status AppendOptionalQueryParameters(string* target);
823 
824 
836  Policy* data) {
837  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
838  }
839 
840  private:
841  string resource_;
842  int32 options_requested_policy_version_;
843  bool _have_options_requested_policy_version_ : 1;
844  DISALLOW_COPY_AND_ASSIGN(BillingAccountsResource_GetIamPolicyMethod);
845 };
846 
860  public:
869  const CloudbillingService* _service_,
870  client::AuthorizationCredential* _credential_);
871 
876 
877 
881  void clear_filter() {
882  _have_filter_ = false;
883  client::ClearCppValueHelper(&filter_);
884  }
885 
886 
892  const string& get_filter() const { return filter_; }
893 
899  string* mutable_filter() {
900  _have_filter_ = true;
901  return &filter_;
902  }
903 
904 
915  void set_filter(const string& value) {
916  _have_filter_ = true;
917  filter_ = value;
918  }
919 
920 
921 
926  _have_page_token_ = false;
927  client::ClearCppValueHelper(&page_token_);
928  }
929 
930 
936  const string& get_page_token() const { return page_token_; }
937 
944  string* mutable_pageToken() {
945  _have_page_token_ = true;
946  return &page_token_;
947  }
948 
949 
958  void set_page_token(const string& value) {
959  _have_page_token_ = true;
960  page_token_ = value;
961  }
962 
963 
964 
969  _have_page_size_ = false;
970  client::ClearCppValueHelper(&page_size_);
971  }
972 
973 
979  int32 get_page_size() const { return page_size_; }
980 
988  void set_page_size(int32 value) {
989  _have_page_size_ = true;
990  page_size_ = value;
991  }
992 
1002  virtual util::Status AppendVariable(
1003  const StringPiece& variable_name,
1004  const client::UriTemplateConfig& config,
1005  string* target);
1006 
1012  virtual util::Status AppendOptionalQueryParameters(string* target);
1013 
1014 
1027  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
1028  }
1029 
1030  private:
1031  string filter_;
1032  string page_token_;
1033  int32 page_size_;
1034  bool _have_filter_ : 1;
1035  bool _have_page_token_ : 1;
1036  bool _have_page_size_ : 1;
1037  DISALLOW_COPY_AND_ASSIGN(BillingAccountsResource_ListMethod);
1038 };
1039 
1040 typedef client::ServiceRequestPager<
1043  BillingAccountsResource_ListMethodPager;
1044 
1058  public:
1070  const CloudbillingService* _service_,
1071  client::AuthorizationCredential* _credential_,
1072  const absl::string_view& name,
1073  const BillingAccount& _content_);
1074 
1079 
1080 
1085  _have_update_mask_ = false;
1086  client::ClearCppValueHelper(&update_mask_);
1087  }
1088 
1089 
1095  const string& get_update_mask() const { return update_mask_; }
1096 
1104  _have_update_mask_ = true;
1105  return &update_mask_;
1106  }
1107 
1108 
1115  void set_update_mask(const string& value) {
1116  _have_update_mask_ = true;
1117  update_mask_ = value;
1118  }
1119 
1129  virtual util::Status AppendVariable(
1130  const StringPiece& variable_name,
1131  const client::UriTemplateConfig& config,
1132  string* target);
1133 
1139  virtual util::Status AppendOptionalQueryParameters(string* target);
1140 
1141 
1153  BillingAccount* data) {
1154  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
1155  }
1156 
1157  private:
1158  string name_;
1159  string update_mask_;
1160  bool _have_update_mask_ : 1; string _content_;
1161  DISALLOW_COPY_AND_ASSIGN(BillingAccountsResource_PatchMethod);
1162 };
1163 
1177  public:
1190  const CloudbillingService* _service_,
1191  client::AuthorizationCredential* _credential_,
1192  const absl::string_view& resource,
1193  const SetIamPolicyRequest& _content_);
1194 
1199 
1200 
1210  virtual util::Status AppendVariable(
1211  const StringPiece& variable_name,
1212  const client::UriTemplateConfig& config,
1213  string* target);
1214 
1215 
1227  Policy* data) {
1228  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
1229  }
1230 
1231  private:
1232  string resource_; string _content_;
1233  DISALLOW_COPY_AND_ASSIGN(BillingAccountsResource_SetIamPolicyMethod);
1234 };
1235 
1249  public:
1262  const CloudbillingService* _service_,
1263  client::AuthorizationCredential* _credential_,
1264  const absl::string_view& resource,
1265  const TestIamPermissionsRequest& _content_);
1266 
1271 
1272 
1282  virtual util::Status AppendVariable(
1283  const StringPiece& variable_name,
1284  const client::UriTemplateConfig& config,
1285  string* target);
1286 
1287 
1300  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
1301  }
1302 
1303  private:
1304  string resource_; string _content_;
1305  DISALLOW_COPY_AND_ASSIGN(BillingAccountsResource_TestIamPermissionsMethod);
1306 };
1307 
1308 
1309 
1310 
1324  public:
1336  const CloudbillingService* _service_,
1337  client::AuthorizationCredential* _credential_,
1338  const absl::string_view& name);
1339 
1344 
1345 
1350  _have_page_token_ = false;
1351  client::ClearCppValueHelper(&page_token_);
1352  }
1353 
1354 
1360  const string& get_page_token() const { return page_token_; }
1361 
1368  string* mutable_pageToken() {
1369  _have_page_token_ = true;
1370  return &page_token_;
1371  }
1372 
1373 
1382  void set_page_token(const string& value) {
1383  _have_page_token_ = true;
1384  page_token_ = value;
1385  }
1386 
1387 
1388 
1393  _have_page_size_ = false;
1394  client::ClearCppValueHelper(&page_size_);
1395  }
1396 
1397 
1403  int32 get_page_size() const { return page_size_; }
1404 
1412  void set_page_size(int32 value) {
1413  _have_page_size_ = true;
1414  page_size_ = value;
1415  }
1416 
1426  virtual util::Status AppendVariable(
1427  const StringPiece& variable_name,
1428  const client::UriTemplateConfig& config,
1429  string* target);
1430 
1436  virtual util::Status AppendOptionalQueryParameters(string* target);
1437 
1438 
1451  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
1452  }
1453 
1454  private:
1455  string name_;
1456  string page_token_;
1457  int32 page_size_;
1458  bool _have_page_token_ : 1;
1459  bool _have_page_size_ : 1;
1460  DISALLOW_COPY_AND_ASSIGN(BillingAccountsResource_ProjectsResource_ListMethod);
1461 };
1462 
1463 typedef client::ServiceRequestPager<
1466  BillingAccountsResource_ProjectsResource_ListMethodPager;
1467 
1468 
1469 
1483  public:
1495  const CloudbillingService* _service_,
1496  client::AuthorizationCredential* _credential_,
1497  const absl::string_view& name);
1498 
1503 
1504 
1514  virtual util::Status AppendVariable(
1515  const StringPiece& variable_name,
1516  const client::UriTemplateConfig& config,
1517  string* target);
1518 
1519 
1531  ProjectBillingInfo* data) {
1532  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
1533  }
1534 
1535  private:
1536  string name_;
1537  DISALLOW_COPY_AND_ASSIGN(ProjectsResource_GetBillingInfoMethod);
1538 };
1539 
1553  public:
1566  const CloudbillingService* _service_,
1567  client::AuthorizationCredential* _credential_,
1568  const absl::string_view& name,
1569  const ProjectBillingInfo& _content_);
1570 
1575 
1576 
1586  virtual util::Status AppendVariable(
1587  const StringPiece& variable_name,
1588  const client::UriTemplateConfig& config,
1589  string* target);
1590 
1591 
1603  ProjectBillingInfo* data) {
1604  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
1605  }
1606 
1607  private:
1608  string name_; string _content_;
1609  DISALLOW_COPY_AND_ASSIGN(ProjectsResource_UpdateBillingInfoMethod);
1610 };
1611 
1612 
1613 
1627  public:
1636  const CloudbillingService* _service_,
1637  client::AuthorizationCredential* _credential_);
1638 
1642  virtual ~ServicesResource_ListMethod();
1643 
1644 
1649  _have_page_token_ = false;
1650  client::ClearCppValueHelper(&page_token_);
1651  }
1652 
1653 
1659  const string& get_page_token() const { return page_token_; }
1660 
1667  string* mutable_pageToken() {
1668  _have_page_token_ = true;
1669  return &page_token_;
1670  }
1671 
1672 
1681  void set_page_token(const string& value) {
1682  _have_page_token_ = true;
1683  page_token_ = value;
1684  }
1685 
1686 
1687 
1692  _have_page_size_ = false;
1693  client::ClearCppValueHelper(&page_size_);
1694  }
1695 
1696 
1702  int32 get_page_size() const { return page_size_; }
1703 
1709  void set_page_size(int32 value) {
1710  _have_page_size_ = true;
1711  page_size_ = value;
1712  }
1713 
1723  virtual util::Status AppendVariable(
1724  const StringPiece& variable_name,
1725  const client::UriTemplateConfig& config,
1726  string* target);
1727 
1733  virtual util::Status AppendOptionalQueryParameters(string* target);
1734 
1735 
1747  ListServicesResponse* data) {
1748  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
1749  }
1750 
1751  private:
1752  string page_token_;
1753  int32 page_size_;
1754  bool _have_page_token_ : 1;
1755  bool _have_page_size_ : 1;
1756  DISALLOW_COPY_AND_ASSIGN(ServicesResource_ListMethod);
1757 };
1758 
1759 typedef client::ServiceRequestPager<
1762  ServicesResource_ListMethodPager;
1763 
1764 
1765 
1766 
1780  public:
1791  const CloudbillingService* _service_,
1792  client::AuthorizationCredential* _credential_,
1793  const absl::string_view& parent);
1794 
1799 
1800 
1805  _have_currency_code_ = false;
1806  client::ClearCppValueHelper(&currency_code_);
1807  }
1808 
1809 
1815  const string& get_currency_code() const { return currency_code_; }
1816 
1824  _have_currency_code_ = true;
1825  return &currency_code_;
1826  }
1827 
1828 
1837  void set_currency_code(const string& value) {
1838  _have_currency_code_ = true;
1839  currency_code_ = value;
1840  }
1841 
1842 
1843 
1848  _have_end_time_ = false;
1849  client::ClearCppValueHelper(&end_time_);
1850  }
1851 
1852 
1858  const string& get_end_time() const { return end_time_; }
1859 
1866  string* mutable_endTime() {
1867  _have_end_time_ = true;
1868  return &end_time_;
1869  }
1870 
1871 
1883  void set_end_time(const string& value) {
1884  _have_end_time_ = true;
1885  end_time_ = value;
1886  }
1887 
1888 
1889 
1894  _have_page_token_ = false;
1895  client::ClearCppValueHelper(&page_token_);
1896  }
1897 
1898 
1904  const string& get_page_token() const { return page_token_; }
1905 
1912  string* mutable_pageToken() {
1913  _have_page_token_ = true;
1914  return &page_token_;
1915  }
1916 
1917 
1926  void set_page_token(const string& value) {
1927  _have_page_token_ = true;
1928  page_token_ = value;
1929  }
1930 
1931 
1932 
1937  _have_start_time_ = false;
1938  client::ClearCppValueHelper(&start_time_);
1939  }
1940 
1941 
1947  const string& get_start_time() const { return start_time_; }
1948 
1955  string* mutable_startTime() {
1956  _have_start_time_ = true;
1957  return &start_time_;
1958  }
1959 
1960 
1972  void set_start_time(const string& value) {
1973  _have_start_time_ = true;
1974  start_time_ = value;
1975  }
1976 
1977 
1978 
1983  _have_page_size_ = false;
1984  client::ClearCppValueHelper(&page_size_);
1985  }
1986 
1987 
1993  int32 get_page_size() const { return page_size_; }
1994 
2000  void set_page_size(int32 value) {
2001  _have_page_size_ = true;
2002  page_size_ = value;
2003  }
2004 
2014  virtual util::Status AppendVariable(
2015  const StringPiece& variable_name,
2016  const client::UriTemplateConfig& config,
2017  string* target);
2018 
2024  virtual util::Status AppendOptionalQueryParameters(string* target);
2025 
2026 
2038  ListSkusResponse* data) {
2039  return CloudbillingServiceBaseRequest::ExecuteAndParseResponse(data);
2040  }
2041 
2042  private:
2043  string parent_;
2044  string currency_code_;
2045  string end_time_;
2046  string page_token_;
2047  string start_time_;
2048  int32 page_size_;
2049  bool _have_currency_code_ : 1;
2050  bool _have_end_time_ : 1;
2051  bool _have_page_token_ : 1;
2052  bool _have_start_time_ : 1;
2053  bool _have_page_size_ : 1;
2054  DISALLOW_COPY_AND_ASSIGN(ServicesResource_SkusResource_ListMethod);
2055 };
2056 
2057 typedef client::ServiceRequestPager<
2060  ServicesResource_SkusResource_ListMethodPager;
2061 
2062 
2063 
2072 class CloudbillingService : public client::ClientService {
2073  public:
2077  static const char googleapis_API_NAME[];
2078 
2082  static const char googleapis_API_VERSION[];
2083 
2087  static const char googleapis_API_GENERATOR[];
2088 
2089 
2096  public:
2104  explicit BillingAccountsResource(CloudbillingService* service);
2105 
2110 
2117  public:
2125  explicit ProjectsResource(CloudbillingService* service);
2126 
2131 
2132 
2145  BillingAccountsResource_ProjectsResource_ListMethod* NewListMethod(
2146  client::AuthorizationCredential* _credential_,
2147  const absl::string_view& name) const;
2148 
2160  BillingAccountsResource_ProjectsResource_ListMethodPager* NewListMethodPager(
2161  client::AuthorizationCredential* _credential_,
2162  const absl::string_view& name) const;
2163 
2164  private:
2165  CloudbillingService* service_;
2166 
2167  DISALLOW_COPY_AND_ASSIGN(ProjectsResource);
2168  };
2175  return projects_;
2176  }
2177 
2178 
2179 
2189  BillingAccountsResource_CreateMethod* NewCreateMethod(
2190  client::AuthorizationCredential* _credential_,
2191  const BillingAccount& _content_) const;
2192 
2204  BillingAccountsResource_GetMethod* NewGetMethod(
2205  client::AuthorizationCredential* _credential_,
2206  const absl::string_view& name) const;
2207 
2219  BillingAccountsResource_GetIamPolicyMethod* NewGetIamPolicyMethod(
2220  client::AuthorizationCredential* _credential_,
2221  const absl::string_view& resource) const;
2222 
2231  BillingAccountsResource_ListMethod* NewListMethod(
2232  client::AuthorizationCredential* _credential_) const;
2233 
2240  BillingAccountsResource_ListMethodPager* NewListMethodPager(
2241  client::AuthorizationCredential* _credential_) const;
2242 
2254  BillingAccountsResource_PatchMethod* NewPatchMethod(
2255  client::AuthorizationCredential* _credential_,
2256  const absl::string_view& name,
2257  const BillingAccount& _content_) const;
2258 
2271  BillingAccountsResource_SetIamPolicyMethod* NewSetIamPolicyMethod(
2272  client::AuthorizationCredential* _credential_,
2273  const absl::string_view& resource,
2274  const SetIamPolicyRequest& _content_) const;
2275 
2288  BillingAccountsResource_TestIamPermissionsMethod* NewTestIamPermissionsMethod(
2289  client::AuthorizationCredential* _credential_,
2290  const absl::string_view& resource,
2291  const TestIamPermissionsRequest& _content_) const;
2292 
2293  private:
2294  CloudbillingService* service_;
2295  ProjectsResource projects_;
2296 
2297  DISALLOW_COPY_AND_ASSIGN(BillingAccountsResource);
2298  };
2299 
2306  public:
2314  explicit ProjectsResource(CloudbillingService* service);
2315 
2320 
2321 
2333  ProjectsResource_GetBillingInfoMethod* NewGetBillingInfoMethod(
2334  client::AuthorizationCredential* _credential_,
2335  const absl::string_view& name) const;
2336 
2349  ProjectsResource_UpdateBillingInfoMethod* NewUpdateBillingInfoMethod(
2350  client::AuthorizationCredential* _credential_,
2351  const absl::string_view& name,
2352  const ProjectBillingInfo& _content_) const;
2353 
2354  private:
2355  CloudbillingService* service_;
2356 
2357  DISALLOW_COPY_AND_ASSIGN(ProjectsResource);
2358  };
2359 
2366  public:
2374  explicit ServicesResource(CloudbillingService* service);
2375 
2380 
2387  public:
2395  explicit SkusResource(CloudbillingService* service);
2396 
2401 
2402 
2413  ServicesResource_SkusResource_ListMethod* NewListMethod(
2414  client::AuthorizationCredential* _credential_,
2415  const absl::string_view& parent) const;
2416 
2427  ServicesResource_SkusResource_ListMethodPager* NewListMethodPager(
2428  client::AuthorizationCredential* _credential_,
2429  const absl::string_view& parent) const;
2430 
2431  private:
2432  CloudbillingService* service_;
2433 
2434  DISALLOW_COPY_AND_ASSIGN(SkusResource);
2435  };
2441  const SkusResource& get_skus() const {
2442  return skus_;
2443  }
2444 
2445 
2446 
2455  ServicesResource_ListMethod* NewListMethod(
2456  client::AuthorizationCredential* _credential_) const;
2457 
2464  ServicesResource_ListMethodPager* NewListMethodPager(
2465  client::AuthorizationCredential* _credential_) const;
2466 
2467  private:
2468  CloudbillingService* service_;
2469  SkusResource skus_;
2470 
2471  DISALLOW_COPY_AND_ASSIGN(ServicesResource);
2472  };
2473 
2474 
2475 
2482  explicit CloudbillingService(client::HttpTransport* transport);
2483 
2487  virtual ~CloudbillingService();
2488 
2495  return billing_accounts_;
2496  }
2497 
2498 
2505  return projects_;
2506  }
2507 
2508 
2515  return services_;
2516  }
2517 
2524  class SCOPES {
2525  public:
2529  static const char CLOUD_PLATFORM[];
2530 
2531  private:
2532  SCOPES(); // Never instantiated.
2533  ~SCOPES(); // Never instantiated.
2534  };
2535 
2536  private:
2537  BillingAccountsResource billing_accounts_;
2538  ProjectsResource projects_;
2539  ServicesResource services_;
2540 
2541  DISALLOW_COPY_AND_ASSIGN(CloudbillingService);
2542 };
2543 
2544 
2575 } // namespace google_cloudbilling_api
2576 #endif // GOOGLE_CLOUDBILLING_API_CLOUDBILLING_SERVICE_H_
const BillingAccountsResource & get_billing_accounts() const
Definition: cloudbilling_service.h:2494
void clear_options_requested_policy_version()
Definition: cloudbilling_service.h:770
bool get_pretty_print() const
Definition: cloudbilling_service.h:416
int32 get_page_size() const
Definition: cloudbilling_service.h:1993
Definition: policy.h:135
util::Status ExecuteAndParseResponse(Policy *data)
Definition: cloudbilling_service.h:835
void set_update_mask(const string &value)
Definition: cloudbilling_service.h:1115
void clear_page_size()
Definition: cloudbilling_service.h:1691
const ProjectsResource & get_projects() const
Definition: cloudbilling_service.h:2504
const string & get_page_token() const
Definition: cloudbilling_service.h:1904
const string & get_end_time() const
Definition: cloudbilling_service.h:1858
void set_oauth_token(const string &value)
Definition: cloudbilling_service.h:395
const string & get_alt() const
Definition: cloudbilling_service.h:217
util::Status ExecuteAndParseResponse(ProjectBillingInfo *data)
Definition: cloudbilling_service.h:1530
const SkusResource & get_skus() const
Definition: cloudbilling_service.h:2441
void set_options_requested_policy_version(int32 value)
Definition: cloudbilling_service.h:798
Definition: set_iam_policy_request.h:52
void set_page_token(const string &value)
Definition: cloudbilling_service.h:958
void set_end_time(const string &value)
Definition: cloudbilling_service.h:1883
string * mutable_oauthToken()
Definition: cloudbilling_service.h:384
string * mutable_startTime()
Definition: cloudbilling_service.h:1955
Definition: test_iam_permissions_response.h:50
void set_page_size(int32 value)
Definition: cloudbilling_service.h:1709
string * mutable_pageToken()
Definition: cloudbilling_service.h:944
const string & get_callback() const
Definition: cloudbilling_service.h:256
void set_xgafv(const string &value)
Definition: cloudbilling_service.h:156
void set_page_size(int32 value)
Definition: cloudbilling_service.h:988
const ServicesResource & get_services() const
Definition: cloudbilling_service.h:2514
int32 get_page_size() const
Definition: cloudbilling_service.h:1702
void clear_page_token()
Definition: cloudbilling_service.h:925
void clear_pretty_print()
Definition: cloudbilling_service.h:405
Definition: billing_account.h:51
void set_page_token(const string &value)
Definition: cloudbilling_service.h:1926
const string & get_update_mask() const
Definition: cloudbilling_service.h:1095
const string & get_page_token() const
Definition: cloudbilling_service.h:1360
const string & get_page_token() const
Definition: cloudbilling_service.h:936
Definition: cloudbilling_service.h:1626
Definition: test_iam_permissions_request.h:50
util::Status ExecuteAndParseResponse(ProjectBillingInfo *data)
Definition: cloudbilling_service.h:1602
Definition: cloudbilling_service.h:88
void set_page_size(int32 value)
Definition: cloudbilling_service.h:2000
void set_currency_code(const string &value)
Definition: cloudbilling_service.h:1837
void clear_start_time()
Definition: cloudbilling_service.h:1936
string * mutable_key()
Definition: cloudbilling_service.h:342
string * mutable_updateMask()
Definition: cloudbilling_service.h:1103
~ProjectsResource()
Definition: cloudbilling_service.h:2319
void set_page_token(const string &value)
Definition: cloudbilling_service.h:1681
Definition: list_skus_response.h:52
void clear_update_mask()
Definition: cloudbilling_service.h:1084
void set_access_token(const string &value)
Definition: cloudbilling_service.h:196
util::Status ExecuteAndParseResponse(ListSkusResponse *data)
Definition: cloudbilling_service.h:2037
void clear_currency_code()
Definition: cloudbilling_service.h:1804
void clear_page_token()
Definition: cloudbilling_service.h:1893
int32 get_page_size() const
Definition: cloudbilling_service.h:979
const string & get_xgafv() const
Definition: cloudbilling_service.h:138
util::Status ExecuteAndParseResponse(BillingAccount *data)
Definition: cloudbilling_service.h:721
void set_upload_protocol(const string &value)
Definition: cloudbilling_service.h:544
int32 get_page_size() const
Definition: cloudbilling_service.h:1403
void clear_page_size()
Definition: cloudbilling_service.h:968
void clear_page_size()
Definition: cloudbilling_service.h:1982
void clear_upload_protocol()
Definition: cloudbilling_service.h:514
void set_alt(const string &value)
Definition: cloudbilling_service.h:235
string * mutable_callback()
Definition: cloudbilling_service.h:263
void set_quota_user(const string &value)
Definition: cloudbilling_service.h:463
Definition: list_services_response.h:52
void set_key(const string &value)
Definition: cloudbilling_service.h:355
string * mutable_uploadType()
Definition: cloudbilling_service.h:492
void clear_quota_user()
Definition: cloudbilling_service.h:431
const string & get_fields() const
Definition: cloudbilling_service.h:295
const string & get_access_token() const
Definition: cloudbilling_service.h:177
const string & get_upload_type() const
Definition: cloudbilling_service.h:484
string * mutable_pageToken()
Definition: cloudbilling_service.h:1667
const string & get_upload_protocol() const
Definition: cloudbilling_service.h:525
const string & get_filter() const
Definition: cloudbilling_service.h:892
void set_fields(const string &value)
Definition: cloudbilling_service.h:314
void set_page_token(const string &value)
Definition: cloudbilling_service.h:1382
util::Status ExecuteAndParseResponse(ListProjectBillingInfoResponse *data)
Definition: cloudbilling_service.h:1449
util::Status ExecuteAndParseResponse(TestIamPermissionsResponse *data)
Definition: cloudbilling_service.h:1298
void clear_end_time()
Definition: cloudbilling_service.h:1847
void set_start_time(const string &value)
Definition: cloudbilling_service.h:1972
string * mutable_currencyCode()
Definition: cloudbilling_service.h:1823
const string & get_page_token() const
Definition: cloudbilling_service.h:1659
void clear_fields()
Definition: cloudbilling_service.h:284
util::Status ExecuteAndParseResponse(ListServicesResponse *data)
Definition: cloudbilling_service.h:1746
string *mutable_ $Xgafv()
Definition: cloudbilling_service.h:145
util::Status ExecuteAndParseResponse(BillingAccount *data)
Definition: cloudbilling_service.h:1152
void set_callback(const string &value)
Definition: cloudbilling_service.h:274
const string & get_currency_code() const
Definition: cloudbilling_service.h:1815
const string & get_quota_user() const
Definition: cloudbilling_service.h:442
~ServicesResource()
Definition: cloudbilling_service.h:2379
const string & get_start_time() const
Definition: cloudbilling_service.h:1947
string * mutable_endTime()
Definition: cloudbilling_service.h:1866
string * mutable_quotaUser()
Definition: cloudbilling_service.h:450
void clear_alt()
Definition: cloudbilling_service.h:206
Definition: list_billing_accounts_response.h:52
void clear_page_token()
Definition: cloudbilling_service.h:1648
util::Status ExecuteAndParseResponse(BillingAccount *data)
Definition: cloudbilling_service.h:651
string * mutable_accessToken()
Definition: cloudbilling_service.h:185
Definition: project_billing_info.h:52
~BillingAccountsResource()
Definition: cloudbilling_service.h:2109
void clear_oauth_token()
Definition: cloudbilling_service.h:365
Definition: cloudbilling_service.h:2072
void clear_key()
Definition: cloudbilling_service.h:324
string * mutable_filter()
Definition: cloudbilling_service.h:899
string * mutable_pageToken()
Definition: cloudbilling_service.h:1912
util::Status ExecuteAndParseResponse(ListBillingAccountsResponse *data)
Definition: cloudbilling_service.h:1025
void clear_filter()
Definition: cloudbilling_service.h:881
const ProjectsResource & get_projects() const
Definition: cloudbilling_service.h:2174
string * mutable_alt()
Definition: cloudbilling_service.h:224
const string & get_key() const
Definition: cloudbilling_service.h:335
string * mutable_pageToken()
Definition: cloudbilling_service.h:1368
string * mutable_uploadProtocol()
Definition: cloudbilling_service.h:533
string * mutable_fields()
Definition: cloudbilling_service.h:302
int32 get_options_requested_policy_version() const
Definition: cloudbilling_service.h:782
void set_filter(const string &value)
Definition: cloudbilling_service.h:915
void set_upload_type(const string &value)
Definition: cloudbilling_service.h:504
void set_pretty_print(bool value)
Definition: cloudbilling_service.h:423
void clear_xgafv()
Definition: cloudbilling_service.h:127
void clear_access_token()
Definition: cloudbilling_service.h:166
Definition: cloudbilling_service.h:2524
void set_page_size(int32 value)
Definition: cloudbilling_service.h:1412
Definition: list_project_billing_info_response.h:52
Definition: aggregation_info.cc:42
void clear_upload_type()
Definition: cloudbilling_service.h:473
const string & get_oauth_token() const
Definition: cloudbilling_service.h:376
util::Status ExecuteAndParseResponse(Policy *data)
Definition: cloudbilling_service.h:1226
void clear_callback()
Definition: cloudbilling_service.h:245