google-cloud-billing-v1 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,164 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/billing/v1/cloud_catalog_pb"
20
+
21
+ module Google
22
+ module Cloud
23
+ module Billing
24
+ module V1
25
+ module CloudCatalog
26
+ module Rest
27
+ ##
28
+ # REST service stub for the CloudCatalog service.
29
+ # Service stub contains baseline method implementations
30
+ # including transcoding, making the REST call, and deserialing the response.
31
+ #
32
+ class ServiceStub
33
+ def initialize endpoint:, credentials:
34
+ # These require statements are intentionally placed here to initialize
35
+ # the REST modules only when it's required.
36
+ require "gapic/rest"
37
+
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
39
+ numeric_enums: true,
40
+ raise_faraday_errors: false
41
+ end
42
+
43
+ ##
44
+ # Baseline implementation for the list_services REST call
45
+ #
46
+ # @param request_pb [::Google::Cloud::Billing::V1::ListServicesRequest]
47
+ # A request object representing the call parameters. Required.
48
+ # @param options [::Gapic::CallOptions]
49
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
50
+ #
51
+ # @yield [result, operation] Access the result along with the TransportOperation object
52
+ # @yieldparam result [::Google::Cloud::Billing::V1::ListServicesResponse]
53
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
54
+ #
55
+ # @return [::Google::Cloud::Billing::V1::ListServicesResponse]
56
+ # A result object deserialized from the server's reply
57
+ def list_services request_pb, options = nil
58
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
59
+
60
+ verb, uri, query_string_params, body = ServiceStub.transcode_list_services_request request_pb
61
+ query_string_params = if query_string_params.any?
62
+ query_string_params.to_h { |p| p.split("=", 2) }
63
+ else
64
+ {}
65
+ end
66
+
67
+ response = @client_stub.make_http_request(
68
+ verb,
69
+ uri: uri,
70
+ body: body || "",
71
+ params: query_string_params,
72
+ options: options
73
+ )
74
+ operation = ::Gapic::Rest::TransportOperation.new response
75
+ result = ::Google::Cloud::Billing::V1::ListServicesResponse.decode_json response.body, ignore_unknown_fields: true
76
+
77
+ yield result, operation if block_given?
78
+ result
79
+ end
80
+
81
+ ##
82
+ # Baseline implementation for the list_skus REST call
83
+ #
84
+ # @param request_pb [::Google::Cloud::Billing::V1::ListSkusRequest]
85
+ # A request object representing the call parameters. Required.
86
+ # @param options [::Gapic::CallOptions]
87
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
88
+ #
89
+ # @yield [result, operation] Access the result along with the TransportOperation object
90
+ # @yieldparam result [::Google::Cloud::Billing::V1::ListSkusResponse]
91
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
92
+ #
93
+ # @return [::Google::Cloud::Billing::V1::ListSkusResponse]
94
+ # A result object deserialized from the server's reply
95
+ def list_skus request_pb, options = nil
96
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
97
+
98
+ verb, uri, query_string_params, body = ServiceStub.transcode_list_skus_request request_pb
99
+ query_string_params = if query_string_params.any?
100
+ query_string_params.to_h { |p| p.split("=", 2) }
101
+ else
102
+ {}
103
+ end
104
+
105
+ response = @client_stub.make_http_request(
106
+ verb,
107
+ uri: uri,
108
+ body: body || "",
109
+ params: query_string_params,
110
+ options: options
111
+ )
112
+ operation = ::Gapic::Rest::TransportOperation.new response
113
+ result = ::Google::Cloud::Billing::V1::ListSkusResponse.decode_json response.body, ignore_unknown_fields: true
114
+
115
+ yield result, operation if block_given?
116
+ result
117
+ end
118
+
119
+ ##
120
+ # @private
121
+ #
122
+ # GRPC transcoding helper method for the list_services REST call
123
+ #
124
+ # @param request_pb [::Google::Cloud::Billing::V1::ListServicesRequest]
125
+ # A request object representing the call parameters. Required.
126
+ # @return [Array(String, [String, nil], Hash{String => String})]
127
+ # Uri, Body, Query string parameters
128
+ def self.transcode_list_services_request request_pb
129
+ transcoder = Gapic::Rest::GrpcTranscoder.new
130
+ .with_bindings(
131
+ uri_method: :get,
132
+ uri_template: "/v1/services",
133
+ matches: []
134
+ )
135
+ transcoder.transcode request_pb
136
+ end
137
+
138
+ ##
139
+ # @private
140
+ #
141
+ # GRPC transcoding helper method for the list_skus REST call
142
+ #
143
+ # @param request_pb [::Google::Cloud::Billing::V1::ListSkusRequest]
144
+ # A request object representing the call parameters. Required.
145
+ # @return [Array(String, [String, nil], Hash{String => String})]
146
+ # Uri, Body, Query string parameters
147
+ def self.transcode_list_skus_request request_pb
148
+ transcoder = Gapic::Rest::GrpcTranscoder.new
149
+ .with_bindings(
150
+ uri_method: :get,
151
+ uri_template: "/v1/{parent}/skus",
152
+ matches: [
153
+ ["parent", %r{^services/[^/]+/?$}, false]
154
+ ]
155
+ )
156
+ transcoder.transcode request_pb
157
+ end
158
+ end
159
+ end
160
+ end
161
+ end
162
+ end
163
+ end
164
+ end
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "gapic/rest"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/cloud/billing/v1/version"
24
+
25
+ require "google/cloud/billing/v1/cloud_catalog/credentials"
26
+ require "google/cloud/billing/v1/cloud_catalog/paths"
27
+ require "google/cloud/billing/v1/cloud_catalog/rest/client"
28
+
29
+ module Google
30
+ module Cloud
31
+ module Billing
32
+ module V1
33
+ ##
34
+ # A catalog of Google Cloud Platform services and SKUs.
35
+ # Provides pricing information and metadata on Google Cloud Platform services
36
+ # and SKUs.
37
+ #
38
+ # To load this service and instantiate a REST client:
39
+ #
40
+ # require "google/cloud/billing/v1/cloud_catalog/rest"
41
+ # client = ::Google::Cloud::Billing::V1::CloudCatalog::Rest::Client.new
42
+ #
43
+ module CloudCatalog
44
+ # Client for the REST transport
45
+ module Rest
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+
53
+ helper_path = ::File.join __dir__, "rest", "helpers.rb"
54
+ require "google/cloud/billing/v1/cloud_catalog/rest/helpers" if ::File.file? helper_path
@@ -25,6 +25,7 @@ require "google/cloud/billing/v1/version"
25
25
  require "google/cloud/billing/v1/cloud_catalog/credentials"
26
26
  require "google/cloud/billing/v1/cloud_catalog/paths"
27
27
  require "google/cloud/billing/v1/cloud_catalog/client"
28
+ require "google/cloud/billing/v1/cloud_catalog/rest"
28
29
 
29
30
  module Google
30
31
  module Cloud
@@ -35,11 +36,16 @@ module Google
35
36
  # Provides pricing information and metadata on Google Cloud Platform services
36
37
  # and SKUs.
37
38
  #
38
- # To load this service and instantiate a client:
39
+ # @example Load this service and instantiate a gRPC client
39
40
  #
40
41
  # require "google/cloud/billing/v1/cloud_catalog"
41
42
  # client = ::Google::Cloud::Billing::V1::CloudCatalog::Client.new
42
43
  #
44
+ # @example Load this service and instantiate a REST client
45
+ #
46
+ # require "google/cloud/billing/v1/cloud_catalog/rest"
47
+ # client = ::Google::Cloud::Billing::V1::CloudCatalog::Rest::Client.new
48
+ #
43
49
  module CloudCatalog
44
50
  end
45
51
  end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/billing/v1/cloud_billing/rest"
20
+ require "google/cloud/billing/v1/cloud_catalog/rest"
21
+ require "google/cloud/billing/v1/version"
22
+
23
+ module Google
24
+ module Cloud
25
+ module Billing
26
+ ##
27
+ # To load just the REST part of this package, including all its services, and instantiate a REST client:
28
+ #
29
+ # @example
30
+ #
31
+ # require "google/cloud/billing/v1/rest"
32
+ # client = ::Google::Cloud::Billing::V1::CloudBilling::Rest::Client.new
33
+ #
34
+ module V1
35
+ end
36
+ end
37
+ end
38
+ end
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Billing
23
23
  module V1
24
- VERSION = "0.10.0"
24
+ VERSION = "0.11.0"
25
25
  end
26
26
  end
27
27
  end
@@ -24,13 +24,18 @@ module Google
24
24
  module Cloud
25
25
  module Billing
26
26
  ##
27
- # To load this package, including all its services, and instantiate a client:
27
+ # API client module.
28
28
  #
29
- # @example
29
+ # @example Load this package, including all its services, and instantiate a gRPC client
30
30
  #
31
31
  # require "google/cloud/billing/v1"
32
32
  # client = ::Google::Cloud::Billing::V1::CloudBilling::Client.new
33
33
  #
34
+ # @example Load this package, including all its services, and instantiate a REST client
35
+ #
36
+ # require "google/cloud/billing/v1"
37
+ # client = ::Google::Cloud::Billing::V1::CloudBilling::Rest::Client.new
38
+ #
34
39
  module V1
35
40
  end
36
41
  end
@@ -26,15 +26,16 @@ module Google
26
26
  # billing account to one or more projects.
27
27
  # @!attribute [r] name
28
28
  # @return [::String]
29
- # Output only. The resource name of the billing account. The resource name has the form
30
- # `billingAccounts/{billing_account_id}`. For example,
29
+ # Output only. The resource name of the billing account. The resource name
30
+ # has the form `billingAccounts/{billing_account_id}`. For example,
31
31
  # `billingAccounts/012345-567890-ABCDEF` would be the resource name for
32
32
  # billing account `012345-567890-ABCDEF`.
33
33
  # @!attribute [r] open
34
34
  # @return [::Boolean]
35
- # Output only. True if the billing account is open, and will therefore be charged for any
36
- # usage on associated projects. False if the billing account is closed, and
37
- # therefore projects associated with it will be unable to use paid services.
35
+ # Output only. True if the billing account is open, and will therefore be
36
+ # charged for any usage on associated projects. False if the billing account
37
+ # is closed, and therefore projects associated with it will be unable to use
38
+ # paid services.
38
39
  # @!attribute [rw] display_name
39
40
  # @return [::String]
40
41
  # The display name given to the billing account, such as `My Billing
@@ -83,8 +84,8 @@ module Google
83
84
  # Request message for `GetBillingAccount`.
84
85
  # @!attribute [rw] name
85
86
  # @return [::String]
86
- # Required. The resource name of the billing account to retrieve. For example,
87
- # `billingAccounts/012345-567890-ABCDEF`.
87
+ # Required. The resource name of the billing account to retrieve. For
88
+ # example, `billingAccounts/012345-567890-ABCDEF`.
88
89
  class GetBillingAccountRequest
89
90
  include ::Google::Protobuf::MessageExts
90
91
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -145,7 +146,8 @@ module Google
145
146
  # Required. The name of the billing account resource to be updated.
146
147
  # @!attribute [rw] account
147
148
  # @return [::Google::Cloud::Billing::V1::BillingAccount]
148
- # Required. The billing account resource to replace the resource on the server.
149
+ # Required. The billing account resource to replace the resource on the
150
+ # server.
149
151
  # @!attribute [rw] update_mask
150
152
  # @return [::Google::Protobuf::FieldMask]
151
153
  # The update mask applied to the resource.
@@ -158,8 +160,9 @@ module Google
158
160
  # Request message for `ListProjectBillingInfo`.
159
161
  # @!attribute [rw] name
160
162
  # @return [::String]
161
- # Required. The resource name of the billing account associated with the projects that
162
- # you want to list. For example, `billingAccounts/012345-567890-ABCDEF`.
163
+ # Required. The resource name of the billing account associated with the
164
+ # projects that you want to list. For example,
165
+ # `billingAccounts/012345-567890-ABCDEF`.
163
166
  # @!attribute [rw] page_size
164
167
  # @return [::Integer]
165
168
  # Requested page size. The maximum page size is 100; this is also the
@@ -202,8 +205,9 @@ module Google
202
205
  # Request message for `UpdateProjectBillingInfo`.
203
206
  # @!attribute [rw] name
204
207
  # @return [::String]
205
- # Required. The resource name of the project associated with the billing information
206
- # that you want to update. For example, `projects/tokyo-rain-123`.
208
+ # Required. The resource name of the project associated with the billing
209
+ # information that you want to update. For example,
210
+ # `projects/tokyo-rain-123`.
207
211
  # @!attribute [rw] project_billing_info
208
212
  # @return [::Google::Cloud::Billing::V1::ProjectBillingInfo]
209
213
  # The new billing information for the project. Read-only fields are ignored;
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-billing-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-16 00:00:00.000000000 Z
11
+ date: 2023-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0.12'
19
+ version: 0.18.0
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 2.a
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '0.12'
29
+ version: 0.18.0
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: 2.a
@@ -64,14 +64,14 @@ dependencies:
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: 1.26.1
67
+ version: 1.26.3
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: 1.26.1
74
+ version: 1.26.3
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: minitest
77
77
  requirement: !ruby/object:Gem::Requirement
@@ -189,14 +189,21 @@ files:
189
189
  - lib/google/cloud/billing/v1/cloud_billing/client.rb
190
190
  - lib/google/cloud/billing/v1/cloud_billing/credentials.rb
191
191
  - lib/google/cloud/billing/v1/cloud_billing/paths.rb
192
+ - lib/google/cloud/billing/v1/cloud_billing/rest.rb
193
+ - lib/google/cloud/billing/v1/cloud_billing/rest/client.rb
194
+ - lib/google/cloud/billing/v1/cloud_billing/rest/service_stub.rb
192
195
  - lib/google/cloud/billing/v1/cloud_billing_pb.rb
193
196
  - lib/google/cloud/billing/v1/cloud_billing_services_pb.rb
194
197
  - lib/google/cloud/billing/v1/cloud_catalog.rb
195
198
  - lib/google/cloud/billing/v1/cloud_catalog/client.rb
196
199
  - lib/google/cloud/billing/v1/cloud_catalog/credentials.rb
197
200
  - lib/google/cloud/billing/v1/cloud_catalog/paths.rb
201
+ - lib/google/cloud/billing/v1/cloud_catalog/rest.rb
202
+ - lib/google/cloud/billing/v1/cloud_catalog/rest/client.rb
203
+ - lib/google/cloud/billing/v1/cloud_catalog/rest/service_stub.rb
198
204
  - lib/google/cloud/billing/v1/cloud_catalog_pb.rb
199
205
  - lib/google/cloud/billing/v1/cloud_catalog_services_pb.rb
206
+ - lib/google/cloud/billing/v1/rest.rb
200
207
  - lib/google/cloud/billing/v1/version.rb
201
208
  - proto_docs/README.md
202
209
  - proto_docs/google/api/client.rb
@@ -232,8 +239,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
232
239
  - !ruby/object:Gem::Version
233
240
  version: '0'
234
241
  requirements: []
235
- rubygems_version: 3.3.14
242
+ rubygems_version: 3.4.2
236
243
  signing_key:
237
244
  specification_version: 4
238
- summary: API Client library for the Billing V1 API
245
+ summary: Allows developers to manage billing for their Google Cloud Platform projects
246
+ programmatically.
239
247
  test_files: []