class Google::Cloud::Memcache::V1beta2::CloudMemcache::Client
Client
for the CloudMemcache
service.
Configures and manages Cloud
Memorystore for Memcached instances.
The `memcache.googleapis.com` service implements the Google
Cloud
Memorystore for Memcached API and defines the following resource model for managing Memorystore Memcached (also called Memcached below) instances:
-
The service works with a collection of cloud projects, named: `/projects/*`
-
Each project has a collection of available locations, named: `/locations/*`
-
Each location has a collection of Memcached instances, named:
`/instances/*`
-
As such, Memcached instances are resources of the form: `/projects/{project_id}/locations/{location_id}/instances/{instance_id}`
Note that location_id must be a GCP `region`; for example:
-
`projects/my-memcached-project/locations/us-central1/instances/my-memcached`
Attributes
@private
Get the associated client for long-running operations.
@return [::Google::Cloud::Memcache::V1beta2::CloudMemcache::Operations]
Public Class Methods
Configure the CloudMemcache
Client
class.
See {::Google::Cloud::Memcache::V1beta2::CloudMemcache::Client::Configuration} for a description of the configuration fields.
@example
# Modify the configuration for all CloudMemcache clients ::Google::Cloud::Memcache::V1beta2::CloudMemcache::Client.configure do |config| config.timeout = 10.0 end
@yield [config] Configure the Client
client. @yieldparam config [Client::Configuration]
@return [Client::Configuration]
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 70 def self.configure @configure ||= begin namespace = ["Google", "Cloud", "Memcache", "V1beta2"] parent_config = while namespace.any? parent_name = namespace.join "::" parent_const = const_get parent_name break parent_const.configure if parent_const.respond_to? :configure namespace.pop end default_config = Client::Configuration.new parent_config default_config.rpcs.list_instances.timeout = 1200.0 default_config.rpcs.get_instance.timeout = 1200.0 default_config.rpcs.create_instance.timeout = 1200.0 default_config.rpcs.update_instance.timeout = 1200.0 default_config.rpcs.update_parameters.timeout = 1200.0 default_config.rpcs.delete_instance.timeout = 1200.0 default_config.rpcs.apply_parameters.timeout = 1200.0 default_config.rpcs.apply_software_update.timeout = 1200.0 default_config end yield @configure if block_given? @configure end
Create a new CloudMemcache
client object.
@example
# Create a client using the default configuration client = ::Google::Cloud::Memcache::V1beta2::CloudMemcache::Client.new # Create a client using a custom configuration client = ::Google::Cloud::Memcache::V1beta2::CloudMemcache::Client.new do |config| config.timeout = 10.0 end
@yield [config] Configure the CloudMemcache
client. @yieldparam config [Client::Configuration]
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 139 def initialize # These require statements are intentionally placed here to initialize # the gRPC module only when it's required. # See https://github.com/googleapis/toolkit/issues/446 require "gapic/grpc" require "google/cloud/memcache/v1beta2/cloud_memcache_services_pb" # Create the configuration object @config = Configuration.new Client.configure # Yield the configuration if needed yield @config if block_given? # Create credentials credentials = @config.credentials # Use self-signed JWT if the endpoint is unchanged from default, # but only if the default endpoint does not have a region prefix. enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint && !@config.endpoint.split(".").first.include?("-") credentials ||= Credentials.default scope: @config.scope, enable_self_signed_jwt: enable_self_signed_jwt if credentials.is_a?(::String) || credentials.is_a?(::Hash) credentials = Credentials.new credentials, scope: @config.scope end @quota_project_id = @config.quota_project @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id @operations_client = Operations.new do |config| config.credentials = credentials config.endpoint = @config.endpoint end @cloud_memcache_stub = ::Gapic::ServiceStub.new( ::Google::Cloud::Memcache::V1beta2::CloudMemcache::Stub, credentials: credentials, endpoint: @config.endpoint, channel_args: @config.channel_args, interceptors: @config.interceptors ) end
Public Instance Methods
`ApplyParameters` restarts the set of specified nodes in order to update them to the current set of parameters for the Memcached Instance
.
@overload apply_parameters
(request, options = nil)
Pass arguments to `apply_parameters` via a request object, either of type {::Google::Cloud::Memcache::V1beta2::ApplyParametersRequest} or an equivalent Hash. @param request [::Google::Cloud::Memcache::V1beta2::ApplyParametersRequest, ::Hash] A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash. @param options [::Gapic::CallOptions, ::Hash] Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
@overload apply_parameters
(name: nil, node_ids: nil, apply_all: nil)
Pass arguments to `apply_parameters` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). @param name [::String] Required. Resource name of the Memcached instance for which parameter group updates should be applied. @param node_ids [::Array<::String>] Nodes to which the instance-level parameter group is applied. @param apply_all [::Boolean] Whether to apply instance-level parameter group to all nodes. If set to true, users are restricted from specifying individual nodes, and `ApplyParameters` updates all nodes within the instance.
@yield [response, operation] Access the result along with the RPC operation @yieldparam response [::Gapic::Operation] @yieldparam operation [::GRPC::ActiveCall::Operation]
@return [::Gapic::Operation]
@raise [::Google::Cloud::Error] if the RPC is aborted.
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 687 def apply_parameters request, options = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1beta2::ApplyParametersRequest # Converts hash and nil to an options object options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h # Customize the options with defaults metadata = @config.rpcs.apply_parameters.metadata.to_h # Set x-goog-api-client and x-goog-user-project headers metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id header_params = { "name" => request.name } request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") metadata[:"x-goog-request-params"] ||= request_params_header options.apply_defaults timeout: @config.rpcs.apply_parameters.timeout, metadata: metadata, retry_policy: @config.rpcs.apply_parameters.retry_policy options.apply_defaults timeout: @config.timeout, metadata: @config.metadata, retry_policy: @config.retry_policy @cloud_memcache_stub.call_rpc :apply_parameters, request, options: options do |response, operation| response = ::Gapic::Operation.new response, @operations_client, options: options yield response, operation if block_given? return response end rescue ::GRPC::BadStatus => e raise ::Google::Cloud::Error.from_error(e) end
Updates software on the selected nodes of the Instance
.
@overload apply_software_update
(request, options = nil)
Pass arguments to `apply_software_update` via a request object, either of type {::Google::Cloud::Memcache::V1beta2::ApplySoftwareUpdateRequest} or an equivalent Hash. @param request [::Google::Cloud::Memcache::V1beta2::ApplySoftwareUpdateRequest, ::Hash] A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash. @param options [::Gapic::CallOptions, ::Hash] Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
@overload apply_software_update
(instance: nil, node_ids: nil, apply_all: nil)
Pass arguments to `apply_software_update` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). @param instance [::String] Required. Resource name of the Memcached instance for which software update should be applied. @param node_ids [::Array<::String>] Nodes to which we should apply the update to. Note all the selected nodes are updated in parallel. @param apply_all [::Boolean] Whether to apply the update to all nodes. If set to true, will explicitly restrict users from specifying any nodes, and apply software update to all nodes (where applicable) within the instance.
@yield [response, operation] Access the result along with the RPC operation @yieldparam response [::Gapic::Operation] @yieldparam operation [::GRPC::ActiveCall::Operation]
@return [::Gapic::Operation]
@raise [::Google::Cloud::Error] if the RPC is aborted.
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 764 def apply_software_update request, options = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1beta2::ApplySoftwareUpdateRequest # Converts hash and nil to an options object options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h # Customize the options with defaults metadata = @config.rpcs.apply_software_update.metadata.to_h # Set x-goog-api-client and x-goog-user-project headers metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id header_params = { "instance" => request.instance } request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") metadata[:"x-goog-request-params"] ||= request_params_header options.apply_defaults timeout: @config.rpcs.apply_software_update.timeout, metadata: metadata, retry_policy: @config.rpcs.apply_software_update.retry_policy options.apply_defaults timeout: @config.timeout, metadata: @config.metadata, retry_policy: @config.retry_policy @cloud_memcache_stub.call_rpc :apply_software_update, request, options: options do |response, operation| response = ::Gapic::Operation.new response, @operations_client, options: options yield response, operation if block_given? return response end rescue ::GRPC::BadStatus => e raise ::Google::Cloud::Error.from_error(e) end
Configure the CloudMemcache
Client
instance.
The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on {Client.configure}.
See {::Google::Cloud::Memcache::V1beta2::CloudMemcache::Client::Configuration} for a description of the configuration fields.
@yield [config] Configure the Client
client. @yieldparam config [Client::Configuration]
@return [Client::Configuration]
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 118 def configure yield @config if block_given? @config end
Creates a new Instance
in a given location.
@overload create_instance
(request, options = nil)
Pass arguments to `create_instance` via a request object, either of type {::Google::Cloud::Memcache::V1beta2::CreateInstanceRequest} or an equivalent Hash. @param request [::Google::Cloud::Memcache::V1beta2::CreateInstanceRequest, ::Hash] A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash. @param options [::Gapic::CallOptions, ::Hash] Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
@overload create_instance
(parent: nil, instance_id: nil, resource: nil)
Pass arguments to `create_instance` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). @param parent [::String] Required. The resource name of the instance location using the form: `projects/{project_id}/locations/{location_id}` where `location_id` refers to a GCP region @param instance_id [::String] Required. The logical name of the Memcached instance in the user project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-40 characters. * Must end with a number or a letter. * Must be unique within the user project / location. If any of the above are not met, the API raises an invalid argument error. @param resource [::Google::Cloud::Memcache::V1beta2::Instance, ::Hash] Required. A Memcached [Instance] resource
@yield [response, operation] Access the result along with the RPC operation @yieldparam response [::Gapic::Operation] @yieldparam operation [::GRPC::ActiveCall::Operation]
@return [::Gapic::Operation]
@raise [::Google::Cloud::Error] if the RPC is aborted.
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 389 def create_instance request, options = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1beta2::CreateInstanceRequest # Converts hash and nil to an options object options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h # Customize the options with defaults metadata = @config.rpcs.create_instance.metadata.to_h # Set x-goog-api-client and x-goog-user-project headers metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id header_params = { "parent" => request.parent } request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") metadata[:"x-goog-request-params"] ||= request_params_header options.apply_defaults timeout: @config.rpcs.create_instance.timeout, metadata: metadata, retry_policy: @config.rpcs.create_instance.retry_policy options.apply_defaults timeout: @config.timeout, metadata: @config.metadata, retry_policy: @config.retry_policy @cloud_memcache_stub.call_rpc :create_instance, request, options: options do |response, operation| response = ::Gapic::Operation.new response, @operations_client, options: options yield response, operation if block_given? return response end rescue ::GRPC::BadStatus => e raise ::Google::Cloud::Error.from_error(e) end
Deletes a single Instance
.
@overload delete_instance
(request, options = nil)
Pass arguments to `delete_instance` via a request object, either of type {::Google::Cloud::Memcache::V1beta2::DeleteInstanceRequest} or an equivalent Hash. @param request [::Google::Cloud::Memcache::V1beta2::DeleteInstanceRequest, ::Hash] A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash. @param options [::Gapic::CallOptions, ::Hash] Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
@overload delete_instance
(name: nil)
Pass arguments to `delete_instance` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). @param name [::String] Required. Memcached instance resource name in the format: `projects/{project_id}/locations/{location_id}/instances/{instance_id}` where `location_id` refers to a GCP region
@yield [response, operation] Access the result along with the RPC operation @yieldparam response [::Gapic::Operation] @yieldparam operation [::GRPC::ActiveCall::Operation]
@return [::Gapic::Operation]
@raise [::Google::Cloud::Error] if the RPC is aborted.
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 610 def delete_instance request, options = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1beta2::DeleteInstanceRequest # Converts hash and nil to an options object options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h # Customize the options with defaults metadata = @config.rpcs.delete_instance.metadata.to_h # Set x-goog-api-client and x-goog-user-project headers metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id header_params = { "name" => request.name } request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") metadata[:"x-goog-request-params"] ||= request_params_header options.apply_defaults timeout: @config.rpcs.delete_instance.timeout, metadata: metadata, retry_policy: @config.rpcs.delete_instance.retry_policy options.apply_defaults timeout: @config.timeout, metadata: @config.metadata, retry_policy: @config.retry_policy @cloud_memcache_stub.call_rpc :delete_instance, request, options: options do |response, operation| response = ::Gapic::Operation.new response, @operations_client, options: options yield response, operation if block_given? return response end rescue ::GRPC::BadStatus => e raise ::Google::Cloud::Error.from_error(e) end
Gets details of a single Instance
.
@overload get_instance
(request, options = nil)
Pass arguments to `get_instance` via a request object, either of type {::Google::Cloud::Memcache::V1beta2::GetInstanceRequest} or an equivalent Hash. @param request [::Google::Cloud::Memcache::V1beta2::GetInstanceRequest, ::Hash] A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash. @param options [::Gapic::CallOptions, ::Hash] Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
@overload get_instance
(name: nil)
Pass arguments to `get_instance` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). @param name [::String] Required. Memcached instance resource name in the format: `projects/{project_id}/locations/{location_id}/instances/{instance_id}` where `location_id` refers to a GCP region
@yield [response, operation] Access the result along with the RPC operation @yieldparam response [::Google::Cloud::Memcache::V1beta2::Instance] @yieldparam operation [::GRPC::ActiveCall::Operation]
@return [::Google::Cloud::Memcache::V1beta2::Instance]
@raise [::Google::Cloud::Error] if the RPC is aborted.
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 306 def get_instance request, options = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1beta2::GetInstanceRequest # Converts hash and nil to an options object options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h # Customize the options with defaults metadata = @config.rpcs.get_instance.metadata.to_h # Set x-goog-api-client and x-goog-user-project headers metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id header_params = { "name" => request.name } request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") metadata[:"x-goog-request-params"] ||= request_params_header options.apply_defaults timeout: @config.rpcs.get_instance.timeout, metadata: metadata, retry_policy: @config.rpcs.get_instance.retry_policy options.apply_defaults timeout: @config.timeout, metadata: @config.metadata, retry_policy: @config.retry_policy @cloud_memcache_stub.call_rpc :get_instance, request, options: options do |response, operation| yield response, operation if block_given? return response end rescue ::GRPC::BadStatus => e raise ::Google::Cloud::Error.from_error(e) end
Lists Instances in a given location.
@overload list_instances
(request, options = nil)
Pass arguments to `list_instances` via a request object, either of type {::Google::Cloud::Memcache::V1beta2::ListInstancesRequest} or an equivalent Hash. @param request [::Google::Cloud::Memcache::V1beta2::ListInstancesRequest, ::Hash] A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash. @param options [::Gapic::CallOptions, ::Hash] Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
@overload list_instances
(parent: nil, page_size: nil, page_token: nil, filter: nil, order_by: nil)
Pass arguments to `list_instances` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). @param parent [::String] Required. The resource name of the instance location using the form: `projects/{project_id}/locations/{location_id}` where `location_id` refers to a GCP region @param page_size [::Integer] The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the `page_size` value, the response may include a partial list and a caller should only rely on response's {::Google::Cloud::Memcache::V1beta2::ListInstancesResponse#next_page_token `next_page_token`} to determine if there are more instances left to be queried. @param page_token [::String] The `next_page_token` value returned from a previous List request, if any. @param filter [::String] List filter. For example, exclude all Memcached instances with name as my-instance by specifying `"name != my-instance"`. @param order_by [::String] Sort results. Supported values are "name", "name desc" or "" (unsorted).
@yield [response, operation] Access the result along with the RPC operation @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Memcache::V1beta2::Instance>] @yieldparam operation [::GRPC::ActiveCall::Operation]
@return [::Gapic::PagedEnumerable<::Google::Cloud::Memcache::V1beta2::Instance>]
@raise [::Google::Cloud::Error] if the RPC is aborted.
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 235 def list_instances request, options = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1beta2::ListInstancesRequest # Converts hash and nil to an options object options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h # Customize the options with defaults metadata = @config.rpcs.list_instances.metadata.to_h # Set x-goog-api-client and x-goog-user-project headers metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id header_params = { "parent" => request.parent } request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") metadata[:"x-goog-request-params"] ||= request_params_header options.apply_defaults timeout: @config.rpcs.list_instances.timeout, metadata: metadata, retry_policy: @config.rpcs.list_instances.retry_policy options.apply_defaults timeout: @config.timeout, metadata: @config.metadata, retry_policy: @config.retry_policy @cloud_memcache_stub.call_rpc :list_instances, request, options: options do |response, operation| response = ::Gapic::PagedEnumerable.new @cloud_memcache_stub, :list_instances, request, response, operation, options yield response, operation if block_given? return response end rescue ::GRPC::BadStatus => e raise ::Google::Cloud::Error.from_error(e) end
Updates an existing Instance
in a given project and location.
@overload update_instance
(request, options = nil)
Pass arguments to `update_instance` via a request object, either of type {::Google::Cloud::Memcache::V1beta2::UpdateInstanceRequest} or an equivalent Hash. @param request [::Google::Cloud::Memcache::V1beta2::UpdateInstanceRequest, ::Hash] A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash. @param options [::Gapic::CallOptions, ::Hash] Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
@overload update_instance
(update_mask: nil, resource: nil)
Pass arguments to `update_instance` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). @param update_mask [::Google::Protobuf::FieldMask, ::Hash] Required. Mask of fields to update. * `displayName` @param resource [::Google::Cloud::Memcache::V1beta2::Instance, ::Hash] Required. A Memcached [Instance] resource. Only fields specified in update_mask are updated.
@yield [response, operation] Access the result along with the RPC operation @yieldparam response [::Gapic::Operation] @yieldparam operation [::GRPC::ActiveCall::Operation]
@return [::Gapic::Operation]
@raise [::Google::Cloud::Error] if the RPC is aborted.
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 462 def update_instance request, options = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1beta2::UpdateInstanceRequest # Converts hash and nil to an options object options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h # Customize the options with defaults metadata = @config.rpcs.update_instance.metadata.to_h # Set x-goog-api-client and x-goog-user-project headers metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id header_params = { "resource.name" => request.resource.name } request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") metadata[:"x-goog-request-params"] ||= request_params_header options.apply_defaults timeout: @config.rpcs.update_instance.timeout, metadata: metadata, retry_policy: @config.rpcs.update_instance.retry_policy options.apply_defaults timeout: @config.timeout, metadata: @config.metadata, retry_policy: @config.retry_policy @cloud_memcache_stub.call_rpc :update_instance, request, options: options do |response, operation| response = ::Gapic::Operation.new response, @operations_client, options: options yield response, operation if block_given? return response end rescue ::GRPC::BadStatus => e raise ::Google::Cloud::Error.from_error(e) end
Updates the defined Memcached parameters for an existing instance. This method only stages the parameters, it must be followed by `ApplyParameters` to apply the parameters to nodes of the Memcached instance.
@overload update_parameters
(request, options = nil)
Pass arguments to `update_parameters` via a request object, either of type {::Google::Cloud::Memcache::V1beta2::UpdateParametersRequest} or an equivalent Hash. @param request [::Google::Cloud::Memcache::V1beta2::UpdateParametersRequest, ::Hash] A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash. @param options [::Gapic::CallOptions, ::Hash] Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
@overload update_parameters
(name: nil, update_mask: nil, parameters: nil)
Pass arguments to `update_parameters` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). @param name [::String] Required. Resource name of the Memcached instance for which the parameters should be updated. @param update_mask [::Google::Protobuf::FieldMask, ::Hash] Required. Mask of fields to update. @param parameters [::Google::Cloud::Memcache::V1beta2::MemcacheParameters, ::Hash] The parameters to apply to the instance.
@yield [response, operation] Access the result along with the RPC operation @yieldparam response [::Gapic::Operation] @yieldparam operation [::GRPC::ActiveCall::Operation]
@return [::Gapic::Operation]
@raise [::Google::Cloud::Error] if the RPC is aborted.
# File lib/google/cloud/memcache/v1beta2/cloud_memcache/client.rb, line 539 def update_parameters request, options = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1beta2::UpdateParametersRequest # Converts hash and nil to an options object options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h # Customize the options with defaults metadata = @config.rpcs.update_parameters.metadata.to_h # Set x-goog-api-client and x-goog-user-project headers metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id header_params = { "name" => request.name } request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") metadata[:"x-goog-request-params"] ||= request_params_header options.apply_defaults timeout: @config.rpcs.update_parameters.timeout, metadata: metadata, retry_policy: @config.rpcs.update_parameters.retry_policy options.apply_defaults timeout: @config.timeout, metadata: @config.metadata, retry_policy: @config.retry_policy @cloud_memcache_stub.call_rpc :update_parameters, request, options: options do |response, operation| response = ::Gapic::Operation.new response, @operations_client, options: options yield response, operation if block_given? return response end rescue ::GRPC::BadStatus => e raise ::Google::Cloud::Error.from_error(e) end