google-iam-credentials-v1 0.3.5 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,288 @@
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/iam/credentials/v1/iamcredentials_pb"
20
+
21
+ module Google
22
+ module Iam
23
+ module Credentials
24
+ module V1
25
+ module IAMCredentials
26
+ module Rest
27
+ ##
28
+ # REST service stub for the IAMCredentials 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 generate_access_token REST call
45
+ #
46
+ # @param request_pb [::Google::Iam::Credentials::V1::GenerateAccessTokenRequest]
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::Iam::Credentials::V1::GenerateAccessTokenResponse]
53
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
54
+ #
55
+ # @return [::Google::Iam::Credentials::V1::GenerateAccessTokenResponse]
56
+ # A result object deserialized from the server's reply
57
+ def generate_access_token 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_generate_access_token_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::Iam::Credentials::V1::GenerateAccessTokenResponse.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 generate_id_token REST call
83
+ #
84
+ # @param request_pb [::Google::Iam::Credentials::V1::GenerateIdTokenRequest]
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::Iam::Credentials::V1::GenerateIdTokenResponse]
91
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
92
+ #
93
+ # @return [::Google::Iam::Credentials::V1::GenerateIdTokenResponse]
94
+ # A result object deserialized from the server's reply
95
+ def generate_id_token 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_generate_id_token_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::Iam::Credentials::V1::GenerateIdTokenResponse.decode_json response.body, ignore_unknown_fields: true
114
+
115
+ yield result, operation if block_given?
116
+ result
117
+ end
118
+
119
+ ##
120
+ # Baseline implementation for the sign_blob REST call
121
+ #
122
+ # @param request_pb [::Google::Iam::Credentials::V1::SignBlobRequest]
123
+ # A request object representing the call parameters. Required.
124
+ # @param options [::Gapic::CallOptions]
125
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
126
+ #
127
+ # @yield [result, operation] Access the result along with the TransportOperation object
128
+ # @yieldparam result [::Google::Iam::Credentials::V1::SignBlobResponse]
129
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
130
+ #
131
+ # @return [::Google::Iam::Credentials::V1::SignBlobResponse]
132
+ # A result object deserialized from the server's reply
133
+ def sign_blob request_pb, options = nil
134
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
135
+
136
+ verb, uri, query_string_params, body = ServiceStub.transcode_sign_blob_request request_pb
137
+ query_string_params = if query_string_params.any?
138
+ query_string_params.to_h { |p| p.split("=", 2) }
139
+ else
140
+ {}
141
+ end
142
+
143
+ response = @client_stub.make_http_request(
144
+ verb,
145
+ uri: uri,
146
+ body: body || "",
147
+ params: query_string_params,
148
+ options: options
149
+ )
150
+ operation = ::Gapic::Rest::TransportOperation.new response
151
+ result = ::Google::Iam::Credentials::V1::SignBlobResponse.decode_json response.body, ignore_unknown_fields: true
152
+
153
+ yield result, operation if block_given?
154
+ result
155
+ end
156
+
157
+ ##
158
+ # Baseline implementation for the sign_jwt REST call
159
+ #
160
+ # @param request_pb [::Google::Iam::Credentials::V1::SignJwtRequest]
161
+ # A request object representing the call parameters. Required.
162
+ # @param options [::Gapic::CallOptions]
163
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
164
+ #
165
+ # @yield [result, operation] Access the result along with the TransportOperation object
166
+ # @yieldparam result [::Google::Iam::Credentials::V1::SignJwtResponse]
167
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
168
+ #
169
+ # @return [::Google::Iam::Credentials::V1::SignJwtResponse]
170
+ # A result object deserialized from the server's reply
171
+ def sign_jwt request_pb, options = nil
172
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
173
+
174
+ verb, uri, query_string_params, body = ServiceStub.transcode_sign_jwt_request request_pb
175
+ query_string_params = if query_string_params.any?
176
+ query_string_params.to_h { |p| p.split("=", 2) }
177
+ else
178
+ {}
179
+ end
180
+
181
+ response = @client_stub.make_http_request(
182
+ verb,
183
+ uri: uri,
184
+ body: body || "",
185
+ params: query_string_params,
186
+ options: options
187
+ )
188
+ operation = ::Gapic::Rest::TransportOperation.new response
189
+ result = ::Google::Iam::Credentials::V1::SignJwtResponse.decode_json response.body, ignore_unknown_fields: true
190
+
191
+ yield result, operation if block_given?
192
+ result
193
+ end
194
+
195
+ ##
196
+ # @private
197
+ #
198
+ # GRPC transcoding helper method for the generate_access_token REST call
199
+ #
200
+ # @param request_pb [::Google::Iam::Credentials::V1::GenerateAccessTokenRequest]
201
+ # A request object representing the call parameters. Required.
202
+ # @return [Array(String, [String, nil], Hash{String => String})]
203
+ # Uri, Body, Query string parameters
204
+ def self.transcode_generate_access_token_request request_pb
205
+ transcoder = Gapic::Rest::GrpcTranscoder.new
206
+ .with_bindings(
207
+ uri_method: :post,
208
+ uri_template: "/v1/{name}:generateAccessToken",
209
+ body: "*",
210
+ matches: [
211
+ ["name", %r{^projects/[^/]+/serviceAccounts/[^/]+/?$}, false]
212
+ ]
213
+ )
214
+ transcoder.transcode request_pb
215
+ end
216
+
217
+ ##
218
+ # @private
219
+ #
220
+ # GRPC transcoding helper method for the generate_id_token REST call
221
+ #
222
+ # @param request_pb [::Google::Iam::Credentials::V1::GenerateIdTokenRequest]
223
+ # A request object representing the call parameters. Required.
224
+ # @return [Array(String, [String, nil], Hash{String => String})]
225
+ # Uri, Body, Query string parameters
226
+ def self.transcode_generate_id_token_request request_pb
227
+ transcoder = Gapic::Rest::GrpcTranscoder.new
228
+ .with_bindings(
229
+ uri_method: :post,
230
+ uri_template: "/v1/{name}:generateIdToken",
231
+ body: "*",
232
+ matches: [
233
+ ["name", %r{^projects/[^/]+/serviceAccounts/[^/]+/?$}, false]
234
+ ]
235
+ )
236
+ transcoder.transcode request_pb
237
+ end
238
+
239
+ ##
240
+ # @private
241
+ #
242
+ # GRPC transcoding helper method for the sign_blob REST call
243
+ #
244
+ # @param request_pb [::Google::Iam::Credentials::V1::SignBlobRequest]
245
+ # A request object representing the call parameters. Required.
246
+ # @return [Array(String, [String, nil], Hash{String => String})]
247
+ # Uri, Body, Query string parameters
248
+ def self.transcode_sign_blob_request request_pb
249
+ transcoder = Gapic::Rest::GrpcTranscoder.new
250
+ .with_bindings(
251
+ uri_method: :post,
252
+ uri_template: "/v1/{name}:signBlob",
253
+ body: "*",
254
+ matches: [
255
+ ["name", %r{^projects/[^/]+/serviceAccounts/[^/]+/?$}, false]
256
+ ]
257
+ )
258
+ transcoder.transcode request_pb
259
+ end
260
+
261
+ ##
262
+ # @private
263
+ #
264
+ # GRPC transcoding helper method for the sign_jwt REST call
265
+ #
266
+ # @param request_pb [::Google::Iam::Credentials::V1::SignJwtRequest]
267
+ # A request object representing the call parameters. Required.
268
+ # @return [Array(String, [String, nil], Hash{String => String})]
269
+ # Uri, Body, Query string parameters
270
+ def self.transcode_sign_jwt_request request_pb
271
+ transcoder = Gapic::Rest::GrpcTranscoder.new
272
+ .with_bindings(
273
+ uri_method: :post,
274
+ uri_template: "/v1/{name}:signJwt",
275
+ body: "*",
276
+ matches: [
277
+ ["name", %r{^projects/[^/]+/serviceAccounts/[^/]+/?$}, false]
278
+ ]
279
+ )
280
+ transcoder.transcode request_pb
281
+ end
282
+ end
283
+ end
284
+ end
285
+ end
286
+ end
287
+ end
288
+ end
@@ -0,0 +1,60 @@
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/iam/credentials/v1/version"
24
+
25
+ require "google/iam/credentials/v1/iam_credentials/credentials"
26
+ require "google/iam/credentials/v1/iam_credentials/paths"
27
+ require "google/iam/credentials/v1/iam_credentials/rest/client"
28
+
29
+ module Google
30
+ module Iam
31
+ module Credentials
32
+ module V1
33
+ ##
34
+ # A service account is a special type of Google account that belongs to your
35
+ # application or a virtual machine (VM), instead of to an individual end user.
36
+ # Your application assumes the identity of the service account to call Google
37
+ # APIs, so that the users aren't directly involved.
38
+ #
39
+ # Service account credentials are used to temporarily assume the identity
40
+ # of the service account. Supported credential types include OAuth 2.0 access
41
+ # tokens, OpenID Connect ID tokens, self-signed JSON Web Tokens (JWTs), and
42
+ # more.
43
+ #
44
+ # To load this service and instantiate a REST client:
45
+ #
46
+ # require "google/iam/credentials/v1/iam_credentials/rest"
47
+ # client = ::Google::Iam::Credentials::V1::IAMCredentials::Rest::Client.new
48
+ #
49
+ module IAMCredentials
50
+ # Client for the REST transport
51
+ module Rest
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
58
+
59
+ helper_path = ::File.join __dir__, "rest", "helpers.rb"
60
+ require "google/iam/credentials/v1/iam_credentials/rest/helpers" if ::File.file? helper_path
@@ -25,6 +25,7 @@ require "google/iam/credentials/v1/version"
25
25
  require "google/iam/credentials/v1/iam_credentials/credentials"
26
26
  require "google/iam/credentials/v1/iam_credentials/paths"
27
27
  require "google/iam/credentials/v1/iam_credentials/client"
28
+ require "google/iam/credentials/v1/iam_credentials/rest"
28
29
 
29
30
  module Google
30
31
  module Iam
@@ -41,11 +42,16 @@ module Google
41
42
  # tokens, OpenID Connect ID tokens, self-signed JSON Web Tokens (JWTs), and
42
43
  # more.
43
44
  #
44
- # To load this service and instantiate a client:
45
+ # @example Load this service and instantiate a gRPC client
45
46
  #
46
47
  # require "google/iam/credentials/v1/iam_credentials"
47
48
  # client = ::Google::Iam::Credentials::V1::IAMCredentials::Client.new
48
49
  #
50
+ # @example Load this service and instantiate a REST client
51
+ #
52
+ # require "google/iam/credentials/v1/iam_credentials/rest"
53
+ # client = ::Google::Iam::Credentials::V1::IAMCredentials::Rest::Client.new
54
+ #
49
55
  module IAMCredentials
50
56
  end
51
57
  end
@@ -1,10 +1,11 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/iam/credentials/v1/iamcredentials.proto
3
3
 
4
+ require 'google/protobuf'
5
+
4
6
  require 'google/api/annotations_pb'
5
7
  require 'google/api/client_pb'
6
8
  require 'google/iam/credentials/v1/common_pb'
7
- require 'google/protobuf'
8
9
 
9
10
  Google::Protobuf::DescriptorPool.generated_pool.build do
10
11
  add_file("google/iam/credentials/v1/iamcredentials.proto", :syntax => :proto3) do
@@ -0,0 +1,37 @@
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/iam/credentials/v1/iam_credentials/rest"
20
+ require "google/iam/credentials/v1/version"
21
+
22
+ module Google
23
+ module Iam
24
+ module Credentials
25
+ ##
26
+ # To load just the REST part of this package, including all its services, and instantiate a REST client:
27
+ #
28
+ # @example
29
+ #
30
+ # require "google/iam/credentials/v1/rest"
31
+ # client = ::Google::Iam::Credentials::V1::IAMCredentials::Rest::Client.new
32
+ #
33
+ module V1
34
+ end
35
+ end
36
+ end
37
+ end
@@ -21,7 +21,7 @@ module Google
21
21
  module Iam
22
22
  module Credentials
23
23
  module V1
24
- VERSION = "0.3.5"
24
+ VERSION = "0.5.0"
25
25
  end
26
26
  end
27
27
  end
@@ -23,11 +23,18 @@ module Google
23
23
  module Iam
24
24
  module Credentials
25
25
  ##
26
- # To load this package, including all its services, and instantiate a client:
26
+ # API client module.
27
+ #
28
+ # @example Load this package, including all its services, and instantiate a gRPC client
27
29
  #
28
30
  # require "google/iam/credentials/v1"
29
31
  # client = ::Google::Iam::Credentials::V1::IAMCredentials::Client.new
30
32
  #
33
+ # @example Load this package, including all its services, and instantiate a REST client
34
+ #
35
+ # require "google/iam/credentials/v1"
36
+ # client = ::Google::Iam::Credentials::V1::IAMCredentials::Rest::Client.new
37
+ #
31
38
  module V1
32
39
  end
33
40
  end