google-cloud-kms-inventory-v1 0.1.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.
Files changed (39) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +144 -0
  6. data/lib/google/cloud/kms/inventory/v1/key_dashboard_service/client.rb +406 -0
  7. data/lib/google/cloud/kms/inventory/v1/key_dashboard_service/credentials.rb +49 -0
  8. data/lib/google/cloud/kms/inventory/v1/key_dashboard_service/paths.rb +49 -0
  9. data/lib/google/cloud/kms/inventory/v1/key_dashboard_service/rest/client.rb +359 -0
  10. data/lib/google/cloud/kms/inventory/v1/key_dashboard_service/rest/service_stub.rb +109 -0
  11. data/lib/google/cloud/kms/inventory/v1/key_dashboard_service/rest.rb +54 -0
  12. data/lib/google/cloud/kms/inventory/v1/key_dashboard_service.rb +57 -0
  13. data/lib/google/cloud/kms/inventory/v1/key_dashboard_service_pb.rb +37 -0
  14. data/lib/google/cloud/kms/inventory/v1/key_dashboard_service_services_pb.rb +49 -0
  15. data/lib/google/cloud/kms/inventory/v1/key_tracking_service/client.rb +514 -0
  16. data/lib/google/cloud/kms/inventory/v1/key_tracking_service/credentials.rb +49 -0
  17. data/lib/google/cloud/kms/inventory/v1/key_tracking_service/paths.rb +98 -0
  18. data/lib/google/cloud/kms/inventory/v1/key_tracking_service/rest/client.rb +444 -0
  19. data/lib/google/cloud/kms/inventory/v1/key_tracking_service/rest/service_stub.rb +168 -0
  20. data/lib/google/cloud/kms/inventory/v1/key_tracking_service/rest.rb +55 -0
  21. data/lib/google/cloud/kms/inventory/v1/key_tracking_service.rb +58 -0
  22. data/lib/google/cloud/kms/inventory/v1/key_tracking_service_pb.rb +64 -0
  23. data/lib/google/cloud/kms/inventory/v1/key_tracking_service_services_pb.rb +55 -0
  24. data/lib/google/cloud/kms/inventory/v1/rest.rb +40 -0
  25. data/lib/google/cloud/kms/inventory/v1/version.rb +30 -0
  26. data/lib/google/cloud/kms/inventory/v1.rb +48 -0
  27. data/lib/google-cloud-kms-inventory-v1.rb +21 -0
  28. data/proto_docs/README.md +4 -0
  29. data/proto_docs/google/api/client.rb +318 -0
  30. data/proto_docs/google/api/field_behavior.rb +71 -0
  31. data/proto_docs/google/api/launch_stage.rb +71 -0
  32. data/proto_docs/google/api/resource.rb +222 -0
  33. data/proto_docs/google/cloud/kms/inventory/v1/key_dashboard_service.rb +62 -0
  34. data/proto_docs/google/cloud/kms/inventory/v1/key_tracking_service.rb +200 -0
  35. data/proto_docs/google/cloud/kms/v1/resources.rb +839 -0
  36. data/proto_docs/google/protobuf/duration.rb +98 -0
  37. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  38. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  39. metadata +248 -0
@@ -0,0 +1,406 @@
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/errors"
20
+ require "google/cloud/kms/inventory/v1/key_dashboard_service_pb"
21
+
22
+ module Google
23
+ module Cloud
24
+ module Kms
25
+ module Inventory
26
+ module V1
27
+ module KeyDashboardService
28
+ ##
29
+ # Client for the KeyDashboardService service.
30
+ #
31
+ # Provides a cross-region view of all Cloud KMS keys in a given Cloud project.
32
+ #
33
+ class Client
34
+ include Paths
35
+
36
+ # @private
37
+ attr_reader :key_dashboard_service_stub
38
+
39
+ ##
40
+ # Configure the KeyDashboardService Client class.
41
+ #
42
+ # See {::Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Client::Configuration}
43
+ # for a description of the configuration fields.
44
+ #
45
+ # @example
46
+ #
47
+ # # Modify the configuration for all KeyDashboardService clients
48
+ # ::Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Client.configure do |config|
49
+ # config.timeout = 10.0
50
+ # end
51
+ #
52
+ # @yield [config] Configure the Client client.
53
+ # @yieldparam config [Client::Configuration]
54
+ #
55
+ # @return [Client::Configuration]
56
+ #
57
+ def self.configure
58
+ @configure ||= begin
59
+ namespace = ["Google", "Cloud", "Kms", "Inventory", "V1"]
60
+ parent_config = while namespace.any?
61
+ parent_name = namespace.join "::"
62
+ parent_const = const_get parent_name
63
+ break parent_const.configure if parent_const.respond_to? :configure
64
+ namespace.pop
65
+ end
66
+ default_config = Client::Configuration.new parent_config
67
+
68
+ default_config.rpcs.list_crypto_keys.timeout = 60.0
69
+
70
+ default_config
71
+ end
72
+ yield @configure if block_given?
73
+ @configure
74
+ end
75
+
76
+ ##
77
+ # Configure the KeyDashboardService Client instance.
78
+ #
79
+ # The configuration is set to the derived mode, meaning that values can be changed,
80
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
81
+ # should be made on {Client.configure}.
82
+ #
83
+ # See {::Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Client::Configuration}
84
+ # for a description of the configuration fields.
85
+ #
86
+ # @yield [config] Configure the Client client.
87
+ # @yieldparam config [Client::Configuration]
88
+ #
89
+ # @return [Client::Configuration]
90
+ #
91
+ def configure
92
+ yield @config if block_given?
93
+ @config
94
+ end
95
+
96
+ ##
97
+ # Create a new KeyDashboardService client object.
98
+ #
99
+ # @example
100
+ #
101
+ # # Create a client using the default configuration
102
+ # client = ::Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Client.new
103
+ #
104
+ # # Create a client using a custom configuration
105
+ # client = ::Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Client.new do |config|
106
+ # config.timeout = 10.0
107
+ # end
108
+ #
109
+ # @yield [config] Configure the KeyDashboardService client.
110
+ # @yieldparam config [Client::Configuration]
111
+ #
112
+ def initialize
113
+ # These require statements are intentionally placed here to initialize
114
+ # the gRPC module only when it's required.
115
+ # See https://github.com/googleapis/toolkit/issues/446
116
+ require "gapic/grpc"
117
+ require "google/cloud/kms/inventory/v1/key_dashboard_service_services_pb"
118
+
119
+ # Create the configuration object
120
+ @config = Configuration.new Client.configure
121
+
122
+ # Yield the configuration if needed
123
+ yield @config if block_given?
124
+
125
+ # Create credentials
126
+ credentials = @config.credentials
127
+ # Use self-signed JWT if the endpoint is unchanged from default,
128
+ # but only if the default endpoint does not have a region prefix.
129
+ enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint &&
130
+ !@config.endpoint.split(".").first.include?("-")
131
+ credentials ||= Credentials.default scope: @config.scope,
132
+ enable_self_signed_jwt: enable_self_signed_jwt
133
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
134
+ credentials = Credentials.new credentials, scope: @config.scope
135
+ end
136
+ @quota_project_id = @config.quota_project
137
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
138
+
139
+ @key_dashboard_service_stub = ::Gapic::ServiceStub.new(
140
+ ::Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Stub,
141
+ credentials: credentials,
142
+ endpoint: @config.endpoint,
143
+ channel_args: @config.channel_args,
144
+ interceptors: @config.interceptors
145
+ )
146
+ end
147
+
148
+ # Service calls
149
+
150
+ ##
151
+ # Returns cryptographic keys managed by Cloud KMS in a given Cloud project.
152
+ # Note that this data is sourced from snapshots, meaning it may not
153
+ # completely reflect the actual state of key metadata at call time.
154
+ #
155
+ # @overload list_crypto_keys(request, options = nil)
156
+ # Pass arguments to `list_crypto_keys` via a request object, either of type
157
+ # {::Google::Cloud::Kms::Inventory::V1::ListCryptoKeysRequest} or an equivalent Hash.
158
+ #
159
+ # @param request [::Google::Cloud::Kms::Inventory::V1::ListCryptoKeysRequest, ::Hash]
160
+ # A request object representing the call parameters. Required. To specify no
161
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
162
+ # @param options [::Gapic::CallOptions, ::Hash]
163
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
164
+ #
165
+ # @overload list_crypto_keys(parent: nil, page_size: nil, page_token: nil)
166
+ # Pass arguments to `list_crypto_keys` via keyword arguments. Note that at
167
+ # least one keyword argument is required. To specify no parameters, or to keep all
168
+ # the default parameter values, pass an empty Hash as a request object (see above).
169
+ #
170
+ # @param parent [::String]
171
+ # Required. The Google Cloud project for which to retrieve key metadata, in
172
+ # the format `projects/*`
173
+ # @param page_size [::Integer]
174
+ # Optional. The maximum number of keys to return. The service may return
175
+ # fewer than this value. If unspecified, at most 1000 keys will be returned.
176
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
177
+ # @param page_token [::String]
178
+ # Optional. Pass this into a subsequent request in order to receive the next
179
+ # page of results.
180
+ #
181
+ # @yield [response, operation] Access the result along with the RPC operation
182
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Kms::V1::CryptoKey>]
183
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
184
+ #
185
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::Kms::V1::CryptoKey>]
186
+ #
187
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
188
+ #
189
+ # @example Basic example
190
+ # require "google/cloud/kms/inventory/v1"
191
+ #
192
+ # # Create a client object. The client can be reused for multiple calls.
193
+ # client = Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Client.new
194
+ #
195
+ # # Create a request. To set request fields, pass in keyword arguments.
196
+ # request = Google::Cloud::Kms::Inventory::V1::ListCryptoKeysRequest.new
197
+ #
198
+ # # Call the list_crypto_keys method.
199
+ # result = client.list_crypto_keys request
200
+ #
201
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
202
+ # # over elements, and API calls will be issued to fetch pages as needed.
203
+ # result.each do |item|
204
+ # # Each element is of type ::Google::Cloud::Kms::V1::CryptoKey.
205
+ # p item
206
+ # end
207
+ #
208
+ def list_crypto_keys request, options = nil
209
+ raise ::ArgumentError, "request must be provided" if request.nil?
210
+
211
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Kms::Inventory::V1::ListCryptoKeysRequest
212
+
213
+ # Converts hash and nil to an options object
214
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
215
+
216
+ # Customize the options with defaults
217
+ metadata = @config.rpcs.list_crypto_keys.metadata.to_h
218
+
219
+ # Set x-goog-api-client and x-goog-user-project headers
220
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
221
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
222
+ gapic_version: ::Google::Cloud::Kms::Inventory::V1::VERSION
223
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
224
+
225
+ header_params = {}
226
+ if request.parent
227
+ header_params["parent"] = request.parent
228
+ end
229
+
230
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
231
+ metadata[:"x-goog-request-params"] ||= request_params_header
232
+
233
+ options.apply_defaults timeout: @config.rpcs.list_crypto_keys.timeout,
234
+ metadata: metadata,
235
+ retry_policy: @config.rpcs.list_crypto_keys.retry_policy
236
+
237
+ options.apply_defaults timeout: @config.timeout,
238
+ metadata: @config.metadata,
239
+ retry_policy: @config.retry_policy
240
+
241
+ @key_dashboard_service_stub.call_rpc :list_crypto_keys, request, options: options do |response, operation|
242
+ response = ::Gapic::PagedEnumerable.new @key_dashboard_service_stub, :list_crypto_keys, request, response, operation, options
243
+ yield response, operation if block_given?
244
+ return response
245
+ end
246
+ rescue ::GRPC::BadStatus => e
247
+ raise ::Google::Cloud::Error.from_error(e)
248
+ end
249
+
250
+ ##
251
+ # Configuration class for the KeyDashboardService API.
252
+ #
253
+ # This class represents the configuration for KeyDashboardService,
254
+ # providing control over timeouts, retry behavior, logging, transport
255
+ # parameters, and other low-level controls. Certain parameters can also be
256
+ # applied individually to specific RPCs. See
257
+ # {::Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Client::Configuration::Rpcs}
258
+ # for a list of RPCs that can be configured independently.
259
+ #
260
+ # Configuration can be applied globally to all clients, or to a single client
261
+ # on construction.
262
+ #
263
+ # @example
264
+ #
265
+ # # Modify the global config, setting the timeout for
266
+ # # list_crypto_keys to 20 seconds,
267
+ # # and all remaining timeouts to 10 seconds.
268
+ # ::Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Client.configure do |config|
269
+ # config.timeout = 10.0
270
+ # config.rpcs.list_crypto_keys.timeout = 20.0
271
+ # end
272
+ #
273
+ # # Apply the above configuration only to a new client.
274
+ # client = ::Google::Cloud::Kms::Inventory::V1::KeyDashboardService::Client.new do |config|
275
+ # config.timeout = 10.0
276
+ # config.rpcs.list_crypto_keys.timeout = 20.0
277
+ # end
278
+ #
279
+ # @!attribute [rw] endpoint
280
+ # The hostname or hostname:port of the service endpoint.
281
+ # Defaults to `"kmsinventory.googleapis.com"`.
282
+ # @return [::String]
283
+ # @!attribute [rw] credentials
284
+ # Credentials to send with calls. You may provide any of the following types:
285
+ # * (`String`) The path to a service account key file in JSON format
286
+ # * (`Hash`) A service account key as a Hash
287
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
288
+ # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
289
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
290
+ # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
291
+ # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
292
+ # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
293
+ # * (`nil`) indicating no credentials
294
+ # @return [::Object]
295
+ # @!attribute [rw] scope
296
+ # The OAuth scopes
297
+ # @return [::Array<::String>]
298
+ # @!attribute [rw] lib_name
299
+ # The library name as recorded in instrumentation and logging
300
+ # @return [::String]
301
+ # @!attribute [rw] lib_version
302
+ # The library version as recorded in instrumentation and logging
303
+ # @return [::String]
304
+ # @!attribute [rw] channel_args
305
+ # Extra parameters passed to the gRPC channel. Note: this is ignored if a
306
+ # `GRPC::Core::Channel` object is provided as the credential.
307
+ # @return [::Hash]
308
+ # @!attribute [rw] interceptors
309
+ # An array of interceptors that are run before calls are executed.
310
+ # @return [::Array<::GRPC::ClientInterceptor>]
311
+ # @!attribute [rw] timeout
312
+ # The call timeout in seconds.
313
+ # @return [::Numeric]
314
+ # @!attribute [rw] metadata
315
+ # Additional gRPC headers to be sent with the call.
316
+ # @return [::Hash{::Symbol=>::String}]
317
+ # @!attribute [rw] retry_policy
318
+ # The retry policy. The value is a hash with the following keys:
319
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
320
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
321
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
322
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
323
+ # trigger a retry.
324
+ # @return [::Hash]
325
+ # @!attribute [rw] quota_project
326
+ # A separate project against which to charge quota.
327
+ # @return [::String]
328
+ #
329
+ class Configuration
330
+ extend ::Gapic::Config
331
+
332
+ config_attr :endpoint, "kmsinventory.googleapis.com", ::String
333
+ config_attr :credentials, nil do |value|
334
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
335
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
336
+ allowed.any? { |klass| klass === value }
337
+ end
338
+ config_attr :scope, nil, ::String, ::Array, nil
339
+ config_attr :lib_name, nil, ::String, nil
340
+ config_attr :lib_version, nil, ::String, nil
341
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
342
+ config_attr :interceptors, nil, ::Array, nil
343
+ config_attr :timeout, nil, ::Numeric, nil
344
+ config_attr :metadata, nil, ::Hash, nil
345
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
346
+ config_attr :quota_project, nil, ::String, nil
347
+
348
+ # @private
349
+ def initialize parent_config = nil
350
+ @parent_config = parent_config unless parent_config.nil?
351
+
352
+ yield self if block_given?
353
+ end
354
+
355
+ ##
356
+ # Configurations for individual RPCs
357
+ # @return [Rpcs]
358
+ #
359
+ def rpcs
360
+ @rpcs ||= begin
361
+ parent_rpcs = nil
362
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
363
+ Rpcs.new parent_rpcs
364
+ end
365
+ end
366
+
367
+ ##
368
+ # Configuration RPC class for the KeyDashboardService API.
369
+ #
370
+ # Includes fields providing the configuration for each RPC in this service.
371
+ # Each configuration object is of type `Gapic::Config::Method` and includes
372
+ # the following configuration fields:
373
+ #
374
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
375
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
376
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
377
+ # include the following keys:
378
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
379
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
380
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
381
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
382
+ # trigger a retry.
383
+ #
384
+ class Rpcs
385
+ ##
386
+ # RPC-specific configuration for `list_crypto_keys`
387
+ # @return [::Gapic::Config::Method]
388
+ #
389
+ attr_reader :list_crypto_keys
390
+
391
+ # @private
392
+ def initialize parent_rpcs = nil
393
+ list_crypto_keys_config = parent_rpcs.list_crypto_keys if parent_rpcs.respond_to? :list_crypto_keys
394
+ @list_crypto_keys = ::Gapic::Config::Method.new list_crypto_keys_config
395
+
396
+ yield self if block_given?
397
+ end
398
+ end
399
+ end
400
+ end
401
+ end
402
+ end
403
+ end
404
+ end
405
+ end
406
+ end
@@ -0,0 +1,49 @@
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 "googleauth"
20
+
21
+ module Google
22
+ module Cloud
23
+ module Kms
24
+ module Inventory
25
+ module V1
26
+ module KeyDashboardService
27
+ # Credentials for the KeyDashboardService API.
28
+ class Credentials < ::Google::Auth::Credentials
29
+ self.scope = [
30
+ "https://www.googleapis.com/auth/cloud-platform"
31
+ ]
32
+ self.env_vars = [
33
+ "GOOGLE_CLOUD_CREDENTIALS",
34
+ "GOOGLE_CLOUD_KEYFILE",
35
+ "GCLOUD_KEYFILE",
36
+ "GOOGLE_CLOUD_CREDENTIALS_JSON",
37
+ "GOOGLE_CLOUD_KEYFILE_JSON",
38
+ "GCLOUD_KEYFILE_JSON"
39
+ ]
40
+ self.paths = [
41
+ "~/.config/google_cloud/application_default_credentials.json"
42
+ ]
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,49 @@
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
+
20
+ module Google
21
+ module Cloud
22
+ module Kms
23
+ module Inventory
24
+ module V1
25
+ module KeyDashboardService
26
+ # Path helper methods for the KeyDashboardService API.
27
+ module Paths
28
+ ##
29
+ # Create a fully-qualified Project resource string.
30
+ #
31
+ # The resource will be in the following format:
32
+ #
33
+ # `projects/{project}`
34
+ #
35
+ # @param project [String]
36
+ #
37
+ # @return [::String]
38
+ def project_path project:
39
+ "projects/#{project}"
40
+ end
41
+
42
+ extend self
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end