google-cloud-gaming-v1 0.1.1 → 0.3.2

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.
@@ -36,3 +36,6 @@ module Google
36
36
  end
37
37
  end
38
38
  end
39
+
40
+ helper_path = ::File.join __dir__, "v1", "_helpers.rb"
41
+ require "google/cloud/gaming/v1/_helpers" if ::File.file? helper_path
@@ -61,55 +61,40 @@ module Google
61
61
  parent_config = while namespace.any?
62
62
  parent_name = namespace.join "::"
63
63
  parent_const = const_get parent_name
64
- break parent_const.configure if parent_const&.respond_to? :configure
64
+ break parent_const.configure if parent_const.respond_to? :configure
65
65
  namespace.pop
66
66
  end
67
67
  default_config = Client::Configuration.new parent_config
68
68
 
69
69
  default_config.rpcs.list_game_server_clusters.timeout = 60.0
70
70
  default_config.rpcs.list_game_server_clusters.retry_policy = {
71
- initial_delay: 1.0,
72
- max_delay: 10.0,
73
- multiplier: 1.3,
74
- retry_codes: [14]
71
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
75
72
  }
76
73
 
77
74
  default_config.rpcs.get_game_server_cluster.timeout = 60.0
78
75
  default_config.rpcs.get_game_server_cluster.retry_policy = {
79
- initial_delay: 1.0,
80
- max_delay: 10.0,
81
- multiplier: 1.3,
82
- retry_codes: [14]
76
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
83
77
  }
84
78
 
85
79
  default_config.rpcs.create_game_server_cluster.timeout = 120.0
86
80
 
87
81
  default_config.rpcs.preview_create_game_server_cluster.timeout = 60.0
88
82
  default_config.rpcs.preview_create_game_server_cluster.retry_policy = {
89
- initial_delay: 1.0,
90
- max_delay: 10.0,
91
- multiplier: 1.3,
92
- retry_codes: [14]
83
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
93
84
  }
94
85
 
95
86
  default_config.rpcs.delete_game_server_cluster.timeout = 60.0
96
87
 
97
88
  default_config.rpcs.preview_delete_game_server_cluster.timeout = 60.0
98
89
  default_config.rpcs.preview_delete_game_server_cluster.retry_policy = {
99
- initial_delay: 1.0,
100
- max_delay: 10.0,
101
- multiplier: 1.3,
102
- retry_codes: [14]
90
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
103
91
  }
104
92
 
105
93
  default_config.rpcs.update_game_server_cluster.timeout = 60.0
106
94
 
107
95
  default_config.rpcs.preview_update_game_server_cluster.timeout = 60.0
108
96
  default_config.rpcs.preview_update_game_server_cluster.retry_policy = {
109
- initial_delay: 1.0,
110
- max_delay: 10.0,
111
- multiplier: 1.3,
112
- retry_codes: [14]
97
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
113
98
  }
114
99
 
115
100
  default_config
@@ -173,8 +158,14 @@ module Google
173
158
 
174
159
  # Create credentials
175
160
  credentials = @config.credentials
176
- credentials ||= Credentials.default scope: @config.scope
177
- if credentials.is_a?(String) || credentials.is_a?(Hash)
161
+ # Use self-signed JWT if the scope and endpoint are unchanged from default,
162
+ # but only if the default endpoint does not have a region prefix.
163
+ enable_self_signed_jwt = @config.scope == Client.configure.scope &&
164
+ @config.endpoint == Client.configure.endpoint &&
165
+ !@config.endpoint.split(".").first.include?("-")
166
+ credentials ||= Credentials.default scope: @config.scope,
167
+ enable_self_signed_jwt: enable_self_signed_jwt
168
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
178
169
  credentials = Credentials.new credentials, scope: @config.scope
179
170
  end
180
171
  @quota_project_id = @config.quota_project
@@ -878,7 +869,7 @@ module Google
878
869
  config_attr :scope, nil, ::String, ::Array, nil
879
870
  config_attr :lib_name, nil, ::String, nil
880
871
  config_attr :lib_version, nil, ::String, nil
881
- config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
872
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
882
873
  config_attr :interceptors, nil, ::Array, nil
883
874
  config_attr :timeout, nil, ::Numeric, nil
884
875
  config_attr :metadata, nil, ::Hash, nil
@@ -899,7 +890,7 @@ module Google
899
890
  def rpcs
900
891
  @rpcs ||= begin
901
892
  parent_rpcs = nil
902
- parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
893
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
903
894
  Rpcs.new parent_rpcs
904
895
  end
905
896
  end
@@ -911,7 +902,7 @@ module Google
911
902
  # Each configuration object is of type `Gapic::Config::Method` and includes
912
903
  # the following configuration fields:
913
904
  #
914
- # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
905
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
915
906
  # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
916
907
  # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
917
908
  # include the following keys:
@@ -965,21 +956,21 @@ module Google
965
956
 
966
957
  # @private
967
958
  def initialize parent_rpcs = nil
968
- list_game_server_clusters_config = parent_rpcs&.list_game_server_clusters if parent_rpcs&.respond_to? :list_game_server_clusters
959
+ list_game_server_clusters_config = parent_rpcs.list_game_server_clusters if parent_rpcs.respond_to? :list_game_server_clusters
969
960
  @list_game_server_clusters = ::Gapic::Config::Method.new list_game_server_clusters_config
970
- get_game_server_cluster_config = parent_rpcs&.get_game_server_cluster if parent_rpcs&.respond_to? :get_game_server_cluster
961
+ get_game_server_cluster_config = parent_rpcs.get_game_server_cluster if parent_rpcs.respond_to? :get_game_server_cluster
971
962
  @get_game_server_cluster = ::Gapic::Config::Method.new get_game_server_cluster_config
972
- create_game_server_cluster_config = parent_rpcs&.create_game_server_cluster if parent_rpcs&.respond_to? :create_game_server_cluster
963
+ create_game_server_cluster_config = parent_rpcs.create_game_server_cluster if parent_rpcs.respond_to? :create_game_server_cluster
973
964
  @create_game_server_cluster = ::Gapic::Config::Method.new create_game_server_cluster_config
974
- preview_create_game_server_cluster_config = parent_rpcs&.preview_create_game_server_cluster if parent_rpcs&.respond_to? :preview_create_game_server_cluster
965
+ preview_create_game_server_cluster_config = parent_rpcs.preview_create_game_server_cluster if parent_rpcs.respond_to? :preview_create_game_server_cluster
975
966
  @preview_create_game_server_cluster = ::Gapic::Config::Method.new preview_create_game_server_cluster_config
976
- delete_game_server_cluster_config = parent_rpcs&.delete_game_server_cluster if parent_rpcs&.respond_to? :delete_game_server_cluster
967
+ delete_game_server_cluster_config = parent_rpcs.delete_game_server_cluster if parent_rpcs.respond_to? :delete_game_server_cluster
977
968
  @delete_game_server_cluster = ::Gapic::Config::Method.new delete_game_server_cluster_config
978
- preview_delete_game_server_cluster_config = parent_rpcs&.preview_delete_game_server_cluster if parent_rpcs&.respond_to? :preview_delete_game_server_cluster
969
+ preview_delete_game_server_cluster_config = parent_rpcs.preview_delete_game_server_cluster if parent_rpcs.respond_to? :preview_delete_game_server_cluster
979
970
  @preview_delete_game_server_cluster = ::Gapic::Config::Method.new preview_delete_game_server_cluster_config
980
- update_game_server_cluster_config = parent_rpcs&.update_game_server_cluster if parent_rpcs&.respond_to? :update_game_server_cluster
971
+ update_game_server_cluster_config = parent_rpcs.update_game_server_cluster if parent_rpcs.respond_to? :update_game_server_cluster
981
972
  @update_game_server_cluster = ::Gapic::Config::Method.new update_game_server_cluster_config
982
- preview_update_game_server_cluster_config = parent_rpcs&.preview_update_game_server_cluster if parent_rpcs&.respond_to? :preview_update_game_server_cluster
973
+ preview_update_game_server_cluster_config = parent_rpcs.preview_update_game_server_cluster if parent_rpcs.respond_to? :preview_update_game_server_cluster
983
974
  @preview_update_game_server_cluster = ::Gapic::Config::Method.new preview_update_game_server_cluster_config
984
975
 
985
976
  yield self if block_given?
@@ -82,7 +82,7 @@ module Google
82
82
  # Create credentials
83
83
  credentials = @config.credentials
84
84
  credentials ||= Credentials.default scope: @config.scope
85
- if credentials.is_a?(String) || credentials.is_a?(Hash)
85
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
86
86
  credentials = Credentials.new credentials, scope: @config.scope
87
87
  end
88
88
  @quota_project_id = @config.quota_project
@@ -103,8 +103,13 @@ module Google
103
103
  # Lists operations that match the specified filter in the request. If the
104
104
  # server doesn't support this method, it returns `UNIMPLEMENTED`.
105
105
  #
106
- # NOTE: the `name` binding below allows API services to override the binding
107
- # to use different resource name schemes, such as `users/*/operations`.
106
+ # NOTE: the `name` binding allows API services to override the binding
107
+ # to use different resource name schemes, such as `users/*/operations`. To
108
+ # override the binding, API services can add a binding such as
109
+ # `"/v1/{name=users/*}/operations"` to their service configuration.
110
+ # For backwards compatibility, the default name includes the operations
111
+ # collection id, however overriding users must ensure the name binding
112
+ # is the parent resource, without the operations collection id.
108
113
  #
109
114
  # @overload list_operations(request, options = nil)
110
115
  # Pass arguments to `list_operations` via a request object, either of type
@@ -122,7 +127,7 @@ module Google
122
127
  # the default parameter values, pass an empty Hash as a request object (see above).
123
128
  #
124
129
  # @param name [::String]
125
- # The name of the operation collection.
130
+ # The name of the operation's parent resource.
126
131
  # @param filter [::String]
127
132
  # The standard list filter.
128
133
  # @param page_size [::Integer]
@@ -390,6 +395,79 @@ module Google
390
395
  raise ::Google::Cloud::Error.from_error(e)
391
396
  end
392
397
 
398
+ ##
399
+ # Waits until the specified long-running operation is done or reaches at most
400
+ # a specified timeout, returning the latest state. If the operation is
401
+ # already done, the latest state is immediately returned. If the timeout
402
+ # specified is greater than the default HTTP/RPC timeout, the HTTP/RPC
403
+ # timeout is used. If the server does not support this method, it returns
404
+ # `google.rpc.Code.UNIMPLEMENTED`.
405
+ # Note that this method is on a best-effort basis. It may return the latest
406
+ # state before the specified timeout (including immediately), meaning even an
407
+ # immediate response is no guarantee that the operation is done.
408
+ #
409
+ # @overload wait_operation(request, options = nil)
410
+ # Pass arguments to `wait_operation` via a request object, either of type
411
+ # {::Google::Longrunning::WaitOperationRequest} or an equivalent Hash.
412
+ #
413
+ # @param request [::Google::Longrunning::WaitOperationRequest, ::Hash]
414
+ # A request object representing the call parameters. Required. To specify no
415
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
416
+ # @param options [::Gapic::CallOptions, ::Hash]
417
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
418
+ #
419
+ # @overload wait_operation(name: nil, timeout: nil)
420
+ # Pass arguments to `wait_operation` via keyword arguments. Note that at
421
+ # least one keyword argument is required. To specify no parameters, or to keep all
422
+ # the default parameter values, pass an empty Hash as a request object (see above).
423
+ #
424
+ # @param name [::String]
425
+ # The name of the operation resource to wait on.
426
+ # @param timeout [::Google::Protobuf::Duration, ::Hash]
427
+ # The maximum duration to wait before timing out. If left blank, the wait
428
+ # will be at most the time permitted by the underlying HTTP/RPC protocol.
429
+ # If RPC context deadline is also specified, the shorter one will be used.
430
+ #
431
+ # @yield [response, operation] Access the result along with the RPC operation
432
+ # @yieldparam response [::Gapic::Operation]
433
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
434
+ #
435
+ # @return [::Gapic::Operation]
436
+ #
437
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
438
+ #
439
+ def wait_operation request, options = nil
440
+ raise ::ArgumentError, "request must be provided" if request.nil?
441
+
442
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Longrunning::WaitOperationRequest
443
+
444
+ # Converts hash and nil to an options object
445
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
446
+
447
+ # Customize the options with defaults
448
+ metadata = @config.rpcs.wait_operation.metadata.to_h
449
+
450
+ # Set x-goog-api-client and x-goog-user-project headers
451
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
452
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
453
+ gapic_version: ::Google::Cloud::Gaming::V1::VERSION
454
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
455
+
456
+ options.apply_defaults timeout: @config.rpcs.wait_operation.timeout,
457
+ metadata: metadata,
458
+ retry_policy: @config.rpcs.wait_operation.retry_policy
459
+ options.apply_defaults metadata: @config.metadata,
460
+ retry_policy: @config.retry_policy
461
+
462
+ @operations_stub.call_rpc :wait_operation, request, options: options do |response, operation|
463
+ response = ::Gapic::Operation.new response, @operations_client, options: options
464
+ yield response, operation if block_given?
465
+ return response
466
+ end
467
+ rescue ::GRPC::BadStatus => e
468
+ raise ::Google::Cloud::Error.from_error(e)
469
+ end
470
+
393
471
  ##
394
472
  # Configuration class for the Operations API.
395
473
  #
@@ -482,7 +560,7 @@ module Google
482
560
  config_attr :scope, nil, ::String, ::Array, nil
483
561
  config_attr :lib_name, nil, ::String, nil
484
562
  config_attr :lib_version, nil, ::String, nil
485
- config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
563
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
486
564
  config_attr :interceptors, nil, ::Array, nil
487
565
  config_attr :timeout, nil, ::Numeric, nil
488
566
  config_attr :metadata, nil, ::Hash, nil
@@ -503,7 +581,7 @@ module Google
503
581
  def rpcs
504
582
  @rpcs ||= begin
505
583
  parent_rpcs = nil
506
- parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
584
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
507
585
  Rpcs.new parent_rpcs
508
586
  end
509
587
  end
@@ -515,7 +593,7 @@ module Google
515
593
  # Each configuration object is of type `Gapic::Config::Method` and includes
516
594
  # the following configuration fields:
517
595
  #
518
- # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
596
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
519
597
  # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
520
598
  # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
521
599
  # include the following keys:
@@ -546,17 +624,24 @@ module Google
546
624
  # @return [::Gapic::Config::Method]
547
625
  #
548
626
  attr_reader :cancel_operation
627
+ ##
628
+ # RPC-specific configuration for `wait_operation`
629
+ # @return [::Gapic::Config::Method]
630
+ #
631
+ attr_reader :wait_operation
549
632
 
550
633
  # @private
551
634
  def initialize parent_rpcs = nil
552
- list_operations_config = parent_rpcs&.list_operations if parent_rpcs&.respond_to? :list_operations
635
+ list_operations_config = parent_rpcs.list_operations if parent_rpcs.respond_to? :list_operations
553
636
  @list_operations = ::Gapic::Config::Method.new list_operations_config
554
- get_operation_config = parent_rpcs&.get_operation if parent_rpcs&.respond_to? :get_operation
637
+ get_operation_config = parent_rpcs.get_operation if parent_rpcs.respond_to? :get_operation
555
638
  @get_operation = ::Gapic::Config::Method.new get_operation_config
556
- delete_operation_config = parent_rpcs&.delete_operation if parent_rpcs&.respond_to? :delete_operation
639
+ delete_operation_config = parent_rpcs.delete_operation if parent_rpcs.respond_to? :delete_operation
557
640
  @delete_operation = ::Gapic::Config::Method.new delete_operation_config
558
- cancel_operation_config = parent_rpcs&.cancel_operation if parent_rpcs&.respond_to? :cancel_operation
641
+ cancel_operation_config = parent_rpcs.cancel_operation if parent_rpcs.respond_to? :cancel_operation
559
642
  @cancel_operation = ::Gapic::Config::Method.new cancel_operation_config
643
+ wait_operation_config = parent_rpcs.wait_operation if parent_rpcs.respond_to? :wait_operation
644
+ @wait_operation = ::Gapic::Config::Method.new wait_operation_config
560
645
 
561
646
  yield self if block_given?
562
647
  end
@@ -35,22 +35,22 @@ module Google
35
35
  self.service_name = 'google.cloud.gaming.v1.GameServerClustersService'
36
36
 
37
37
  # Lists game server clusters in a given project and location.
38
- rpc :ListGameServerClusters, Google::Cloud::Gaming::V1::ListGameServerClustersRequest, Google::Cloud::Gaming::V1::ListGameServerClustersResponse
38
+ rpc :ListGameServerClusters, ::Google::Cloud::Gaming::V1::ListGameServerClustersRequest, ::Google::Cloud::Gaming::V1::ListGameServerClustersResponse
39
39
  # Gets details of a single game server cluster.
40
- rpc :GetGameServerCluster, Google::Cloud::Gaming::V1::GetGameServerClusterRequest, Google::Cloud::Gaming::V1::GameServerCluster
40
+ rpc :GetGameServerCluster, ::Google::Cloud::Gaming::V1::GetGameServerClusterRequest, ::Google::Cloud::Gaming::V1::GameServerCluster
41
41
  # Creates a new game server cluster in a given project and location.
42
- rpc :CreateGameServerCluster, Google::Cloud::Gaming::V1::CreateGameServerClusterRequest, Google::Longrunning::Operation
42
+ rpc :CreateGameServerCluster, ::Google::Cloud::Gaming::V1::CreateGameServerClusterRequest, ::Google::Longrunning::Operation
43
43
  # Previews creation of a new game server cluster in a given project and
44
44
  # location.
45
- rpc :PreviewCreateGameServerCluster, Google::Cloud::Gaming::V1::PreviewCreateGameServerClusterRequest, Google::Cloud::Gaming::V1::PreviewCreateGameServerClusterResponse
45
+ rpc :PreviewCreateGameServerCluster, ::Google::Cloud::Gaming::V1::PreviewCreateGameServerClusterRequest, ::Google::Cloud::Gaming::V1::PreviewCreateGameServerClusterResponse
46
46
  # Deletes a single game server cluster.
47
- rpc :DeleteGameServerCluster, Google::Cloud::Gaming::V1::DeleteGameServerClusterRequest, Google::Longrunning::Operation
47
+ rpc :DeleteGameServerCluster, ::Google::Cloud::Gaming::V1::DeleteGameServerClusterRequest, ::Google::Longrunning::Operation
48
48
  # Previews deletion of a single game server cluster.
49
- rpc :PreviewDeleteGameServerCluster, Google::Cloud::Gaming::V1::PreviewDeleteGameServerClusterRequest, Google::Cloud::Gaming::V1::PreviewDeleteGameServerClusterResponse
49
+ rpc :PreviewDeleteGameServerCluster, ::Google::Cloud::Gaming::V1::PreviewDeleteGameServerClusterRequest, ::Google::Cloud::Gaming::V1::PreviewDeleteGameServerClusterResponse
50
50
  # Patches a single game server cluster.
51
- rpc :UpdateGameServerCluster, Google::Cloud::Gaming::V1::UpdateGameServerClusterRequest, Google::Longrunning::Operation
51
+ rpc :UpdateGameServerCluster, ::Google::Cloud::Gaming::V1::UpdateGameServerClusterRequest, ::Google::Longrunning::Operation
52
52
  # Previews updating a GameServerCluster.
53
- rpc :PreviewUpdateGameServerCluster, Google::Cloud::Gaming::V1::PreviewUpdateGameServerClusterRequest, Google::Cloud::Gaming::V1::PreviewUpdateGameServerClusterResponse
53
+ rpc :PreviewUpdateGameServerCluster, ::Google::Cloud::Gaming::V1::PreviewUpdateGameServerClusterRequest, ::Google::Cloud::Gaming::V1::PreviewUpdateGameServerClusterResponse
54
54
  end
55
55
 
56
56
  Stub = Service.rpc_stub_class
@@ -60,25 +60,19 @@ module Google
60
60
  parent_config = while namespace.any?
61
61
  parent_name = namespace.join "::"
62
62
  parent_const = const_get parent_name
63
- break parent_const.configure if parent_const&.respond_to? :configure
63
+ break parent_const.configure if parent_const.respond_to? :configure
64
64
  namespace.pop
65
65
  end
66
66
  default_config = Client::Configuration.new parent_config
67
67
 
68
68
  default_config.rpcs.list_game_server_configs.timeout = 60.0
69
69
  default_config.rpcs.list_game_server_configs.retry_policy = {
70
- initial_delay: 1.0,
71
- max_delay: 10.0,
72
- multiplier: 1.3,
73
- retry_codes: [14]
70
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
74
71
  }
75
72
 
76
73
  default_config.rpcs.get_game_server_config.timeout = 60.0
77
74
  default_config.rpcs.get_game_server_config.retry_policy = {
78
- initial_delay: 1.0,
79
- max_delay: 10.0,
80
- multiplier: 1.3,
81
- retry_codes: [14]
75
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
82
76
  }
83
77
 
84
78
  default_config.rpcs.create_game_server_config.timeout = 60.0
@@ -146,8 +140,14 @@ module Google
146
140
 
147
141
  # Create credentials
148
142
  credentials = @config.credentials
149
- credentials ||= Credentials.default scope: @config.scope
150
- if credentials.is_a?(String) || credentials.is_a?(Hash)
143
+ # Use self-signed JWT if the scope and endpoint are unchanged from default,
144
+ # but only if the default endpoint does not have a region prefix.
145
+ enable_self_signed_jwt = @config.scope == Client.configure.scope &&
146
+ @config.endpoint == Client.configure.endpoint &&
147
+ !@config.endpoint.split(".").first.include?("-")
148
+ credentials ||= Credentials.default scope: @config.scope,
149
+ enable_self_signed_jwt: enable_self_signed_jwt
150
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
151
151
  credentials = Credentials.new credentials, scope: @config.scope
152
152
  end
153
153
  @quota_project_id = @config.quota_project
@@ -564,7 +564,7 @@ module Google
564
564
  config_attr :scope, nil, ::String, ::Array, nil
565
565
  config_attr :lib_name, nil, ::String, nil
566
566
  config_attr :lib_version, nil, ::String, nil
567
- config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
567
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
568
568
  config_attr :interceptors, nil, ::Array, nil
569
569
  config_attr :timeout, nil, ::Numeric, nil
570
570
  config_attr :metadata, nil, ::Hash, nil
@@ -585,7 +585,7 @@ module Google
585
585
  def rpcs
586
586
  @rpcs ||= begin
587
587
  parent_rpcs = nil
588
- parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
588
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
589
589
  Rpcs.new parent_rpcs
590
590
  end
591
591
  end
@@ -597,7 +597,7 @@ module Google
597
597
  # Each configuration object is of type `Gapic::Config::Method` and includes
598
598
  # the following configuration fields:
599
599
  #
600
- # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
600
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
601
601
  # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
602
602
  # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
603
603
  # include the following keys:
@@ -631,13 +631,13 @@ module Google
631
631
 
632
632
  # @private
633
633
  def initialize parent_rpcs = nil
634
- list_game_server_configs_config = parent_rpcs&.list_game_server_configs if parent_rpcs&.respond_to? :list_game_server_configs
634
+ list_game_server_configs_config = parent_rpcs.list_game_server_configs if parent_rpcs.respond_to? :list_game_server_configs
635
635
  @list_game_server_configs = ::Gapic::Config::Method.new list_game_server_configs_config
636
- get_game_server_config_config = parent_rpcs&.get_game_server_config if parent_rpcs&.respond_to? :get_game_server_config
636
+ get_game_server_config_config = parent_rpcs.get_game_server_config if parent_rpcs.respond_to? :get_game_server_config
637
637
  @get_game_server_config = ::Gapic::Config::Method.new get_game_server_config_config
638
- create_game_server_config_config = parent_rpcs&.create_game_server_config if parent_rpcs&.respond_to? :create_game_server_config
638
+ create_game_server_config_config = parent_rpcs.create_game_server_config if parent_rpcs.respond_to? :create_game_server_config
639
639
  @create_game_server_config = ::Gapic::Config::Method.new create_game_server_config_config
640
- delete_game_server_config_config = parent_rpcs&.delete_game_server_config if parent_rpcs&.respond_to? :delete_game_server_config
640
+ delete_game_server_config_config = parent_rpcs.delete_game_server_config if parent_rpcs.respond_to? :delete_game_server_config
641
641
  @delete_game_server_config = ::Gapic::Config::Method.new delete_game_server_config_config
642
642
 
643
643
  yield self if block_given?
@@ -82,7 +82,7 @@ module Google
82
82
  # Create credentials
83
83
  credentials = @config.credentials
84
84
  credentials ||= Credentials.default scope: @config.scope
85
- if credentials.is_a?(String) || credentials.is_a?(Hash)
85
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
86
86
  credentials = Credentials.new credentials, scope: @config.scope
87
87
  end
88
88
  @quota_project_id = @config.quota_project
@@ -103,8 +103,13 @@ module Google
103
103
  # Lists operations that match the specified filter in the request. If the
104
104
  # server doesn't support this method, it returns `UNIMPLEMENTED`.
105
105
  #
106
- # NOTE: the `name` binding below allows API services to override the binding
107
- # to use different resource name schemes, such as `users/*/operations`.
106
+ # NOTE: the `name` binding allows API services to override the binding
107
+ # to use different resource name schemes, such as `users/*/operations`. To
108
+ # override the binding, API services can add a binding such as
109
+ # `"/v1/{name=users/*}/operations"` to their service configuration.
110
+ # For backwards compatibility, the default name includes the operations
111
+ # collection id, however overriding users must ensure the name binding
112
+ # is the parent resource, without the operations collection id.
108
113
  #
109
114
  # @overload list_operations(request, options = nil)
110
115
  # Pass arguments to `list_operations` via a request object, either of type
@@ -122,7 +127,7 @@ module Google
122
127
  # the default parameter values, pass an empty Hash as a request object (see above).
123
128
  #
124
129
  # @param name [::String]
125
- # The name of the operation collection.
130
+ # The name of the operation's parent resource.
126
131
  # @param filter [::String]
127
132
  # The standard list filter.
128
133
  # @param page_size [::Integer]
@@ -390,6 +395,79 @@ module Google
390
395
  raise ::Google::Cloud::Error.from_error(e)
391
396
  end
392
397
 
398
+ ##
399
+ # Waits until the specified long-running operation is done or reaches at most
400
+ # a specified timeout, returning the latest state. If the operation is
401
+ # already done, the latest state is immediately returned. If the timeout
402
+ # specified is greater than the default HTTP/RPC timeout, the HTTP/RPC
403
+ # timeout is used. If the server does not support this method, it returns
404
+ # `google.rpc.Code.UNIMPLEMENTED`.
405
+ # Note that this method is on a best-effort basis. It may return the latest
406
+ # state before the specified timeout (including immediately), meaning even an
407
+ # immediate response is no guarantee that the operation is done.
408
+ #
409
+ # @overload wait_operation(request, options = nil)
410
+ # Pass arguments to `wait_operation` via a request object, either of type
411
+ # {::Google::Longrunning::WaitOperationRequest} or an equivalent Hash.
412
+ #
413
+ # @param request [::Google::Longrunning::WaitOperationRequest, ::Hash]
414
+ # A request object representing the call parameters. Required. To specify no
415
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
416
+ # @param options [::Gapic::CallOptions, ::Hash]
417
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
418
+ #
419
+ # @overload wait_operation(name: nil, timeout: nil)
420
+ # Pass arguments to `wait_operation` via keyword arguments. Note that at
421
+ # least one keyword argument is required. To specify no parameters, or to keep all
422
+ # the default parameter values, pass an empty Hash as a request object (see above).
423
+ #
424
+ # @param name [::String]
425
+ # The name of the operation resource to wait on.
426
+ # @param timeout [::Google::Protobuf::Duration, ::Hash]
427
+ # The maximum duration to wait before timing out. If left blank, the wait
428
+ # will be at most the time permitted by the underlying HTTP/RPC protocol.
429
+ # If RPC context deadline is also specified, the shorter one will be used.
430
+ #
431
+ # @yield [response, operation] Access the result along with the RPC operation
432
+ # @yieldparam response [::Gapic::Operation]
433
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
434
+ #
435
+ # @return [::Gapic::Operation]
436
+ #
437
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
438
+ #
439
+ def wait_operation request, options = nil
440
+ raise ::ArgumentError, "request must be provided" if request.nil?
441
+
442
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Longrunning::WaitOperationRequest
443
+
444
+ # Converts hash and nil to an options object
445
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
446
+
447
+ # Customize the options with defaults
448
+ metadata = @config.rpcs.wait_operation.metadata.to_h
449
+
450
+ # Set x-goog-api-client and x-goog-user-project headers
451
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
452
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
453
+ gapic_version: ::Google::Cloud::Gaming::V1::VERSION
454
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
455
+
456
+ options.apply_defaults timeout: @config.rpcs.wait_operation.timeout,
457
+ metadata: metadata,
458
+ retry_policy: @config.rpcs.wait_operation.retry_policy
459
+ options.apply_defaults metadata: @config.metadata,
460
+ retry_policy: @config.retry_policy
461
+
462
+ @operations_stub.call_rpc :wait_operation, request, options: options do |response, operation|
463
+ response = ::Gapic::Operation.new response, @operations_client, options: options
464
+ yield response, operation if block_given?
465
+ return response
466
+ end
467
+ rescue ::GRPC::BadStatus => e
468
+ raise ::Google::Cloud::Error.from_error(e)
469
+ end
470
+
393
471
  ##
394
472
  # Configuration class for the Operations API.
395
473
  #
@@ -482,7 +560,7 @@ module Google
482
560
  config_attr :scope, nil, ::String, ::Array, nil
483
561
  config_attr :lib_name, nil, ::String, nil
484
562
  config_attr :lib_version, nil, ::String, nil
485
- config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
563
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
486
564
  config_attr :interceptors, nil, ::Array, nil
487
565
  config_attr :timeout, nil, ::Numeric, nil
488
566
  config_attr :metadata, nil, ::Hash, nil
@@ -503,7 +581,7 @@ module Google
503
581
  def rpcs
504
582
  @rpcs ||= begin
505
583
  parent_rpcs = nil
506
- parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
584
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
507
585
  Rpcs.new parent_rpcs
508
586
  end
509
587
  end
@@ -515,7 +593,7 @@ module Google
515
593
  # Each configuration object is of type `Gapic::Config::Method` and includes
516
594
  # the following configuration fields:
517
595
  #
518
- # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
596
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
519
597
  # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
520
598
  # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
521
599
  # include the following keys:
@@ -546,17 +624,24 @@ module Google
546
624
  # @return [::Gapic::Config::Method]
547
625
  #
548
626
  attr_reader :cancel_operation
627
+ ##
628
+ # RPC-specific configuration for `wait_operation`
629
+ # @return [::Gapic::Config::Method]
630
+ #
631
+ attr_reader :wait_operation
549
632
 
550
633
  # @private
551
634
  def initialize parent_rpcs = nil
552
- list_operations_config = parent_rpcs&.list_operations if parent_rpcs&.respond_to? :list_operations
635
+ list_operations_config = parent_rpcs.list_operations if parent_rpcs.respond_to? :list_operations
553
636
  @list_operations = ::Gapic::Config::Method.new list_operations_config
554
- get_operation_config = parent_rpcs&.get_operation if parent_rpcs&.respond_to? :get_operation
637
+ get_operation_config = parent_rpcs.get_operation if parent_rpcs.respond_to? :get_operation
555
638
  @get_operation = ::Gapic::Config::Method.new get_operation_config
556
- delete_operation_config = parent_rpcs&.delete_operation if parent_rpcs&.respond_to? :delete_operation
639
+ delete_operation_config = parent_rpcs.delete_operation if parent_rpcs.respond_to? :delete_operation
557
640
  @delete_operation = ::Gapic::Config::Method.new delete_operation_config
558
- cancel_operation_config = parent_rpcs&.cancel_operation if parent_rpcs&.respond_to? :cancel_operation
641
+ cancel_operation_config = parent_rpcs.cancel_operation if parent_rpcs.respond_to? :cancel_operation
559
642
  @cancel_operation = ::Gapic::Config::Method.new cancel_operation_config
643
+ wait_operation_config = parent_rpcs.wait_operation if parent_rpcs.respond_to? :wait_operation
644
+ @wait_operation = ::Gapic::Config::Method.new wait_operation_config
560
645
 
561
646
  yield self if block_given?
562
647
  end