google-cloud-memcache-v1 0.3.0 → 0.4.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1bc6ad70ed40e55d1d4340a54c0f508971097955468c063e24db09792b6403b0
4
- data.tar.gz: 3067886824d642dacf03d7b87a2b7af3aae89ea48a05c3f97bc1ee3b1d2cea49
3
+ metadata.gz: bc79a4cc37fadef741fe07b88e9904a00c1aa16436d251c1661c9c3c47285b61
4
+ data.tar.gz: 169f349cbf4c95481e05ccd40cf14219b557acdf192dee3066028d46a000cb9c
5
5
  SHA512:
6
- metadata.gz: d848f3b0cf229dcc6b6a35848a75e2ff15872ec9007b73ed45546f94f0c303ffc3f0fff558075b95613cb0997633994cad4e8169b2c632be01cc9e615f4c06d3
7
- data.tar.gz: 836c5c947ca656741ea092d958eb7eb5f5ea844683cc8a36abc562f721bfff865289039e65a19dd8a6a5739f3ddf4cea10ecde152858793bf0d3ff9b823fe90e
6
+ metadata.gz: 3832b363ab2c6cd3288708b4e7c2f18746ac00c6db9ef0c63d6dcfa83a9e6346b04e5ed374c393308c4b5a87d898697407b9ca0ab8f37647d7400570033f2da8
7
+ data.tar.gz: 3c17eaf9825bac0fdebdad1c5ec7913ddf826f20528211aed4422c579acca76e33ea5b45be32e762876bc356882d8cce272c36db44316a5b197a22371dca65cd
data/AUTHENTICATION.md CHANGED
@@ -114,7 +114,7 @@ credentials are discovered.
114
114
  To configure your system for this, simply:
115
115
 
116
116
  1. [Download and install the Cloud SDK](https://cloud.google.com/sdk)
117
- 2. Authenticate using OAuth 2.0 `$ gcloud auth login`
117
+ 2. Authenticate using OAuth 2.0 `$ gcloud auth application-default login`
118
118
  3. Write code as if already authenticated.
119
119
 
120
120
  **NOTE:** This is _not_ recommended for running in production. The Cloud SDK
@@ -18,6 +18,7 @@
18
18
 
19
19
  require "google/cloud/errors"
20
20
  require "google/cloud/memcache/v1/cloud_memcache_pb"
21
+ require "google/cloud/location"
21
22
 
22
23
  module Google
23
24
  module Cloud
@@ -92,6 +93,8 @@ module Google
92
93
 
93
94
  default_config.rpcs.apply_parameters.timeout = 1200.0
94
95
 
96
+ default_config.rpcs.reschedule_maintenance.timeout = 1200.0
97
+
95
98
  default_config
96
99
  end
97
100
  yield @configure if block_given?
@@ -167,6 +170,12 @@ module Google
167
170
  config.endpoint = @config.endpoint
168
171
  end
169
172
 
173
+ @location_client = Google::Cloud::Location::Locations::Client.new do |config|
174
+ config.credentials = credentials
175
+ config.quota_project = @quota_project_id
176
+ config.endpoint = @config.endpoint
177
+ end
178
+
170
179
  @cloud_memcache_stub = ::Gapic::ServiceStub.new(
171
180
  ::Google::Cloud::Memcache::V1::CloudMemcache::Stub,
172
181
  credentials: credentials,
@@ -183,6 +192,13 @@ module Google
183
192
  #
184
193
  attr_reader :operations_client
185
194
 
195
+ ##
196
+ # Get the associated client for mix-in of the Locations.
197
+ #
198
+ # @return [Google::Cloud::Location::Locations::Client]
199
+ #
200
+ attr_reader :location_client
201
+
186
202
  # Service calls
187
203
 
188
204
  ##
@@ -211,16 +227,15 @@ module Google
211
227
  # The maximum number of items to return.
212
228
  #
213
229
  # If not specified, a default value of 1000 will be used by the service.
214
- # Regardless of the page_size value, the response may include a partial list
215
- # and a caller should only rely on response's
216
- # [next_page_token][CloudMemcache.ListInstancesResponse.next_page_token]
230
+ # Regardless of the `page_size` value, the response may include a partial
231
+ # list and a caller should only rely on response's
232
+ # {::Google::Cloud::Memcache::V1::ListInstancesResponse#next_page_token `next_page_token`}
217
233
  # to determine if there are more instances left to be queried.
218
234
  # @param page_token [::String]
219
- # The next_page_token value returned from a previous List request,
220
- # if any.
235
+ # The `next_page_token` value returned from a previous List request, if any.
221
236
  # @param filter [::String]
222
237
  # List filter. For example, exclude all Memcached instances with name as
223
- # my-instance by specifying "name != my-instance".
238
+ # my-instance by specifying `"name != my-instance"`.
224
239
  # @param order_by [::String]
225
240
  # Sort results. Supported values are "name", "name desc" or "" (unsorted).
226
241
  #
@@ -412,9 +427,9 @@ module Google
412
427
  # * Must start with a letter.
413
428
  # * Must be between 1-40 characters.
414
429
  # * Must end with a number or a letter.
415
- # * Must be unique within the user project / location
430
+ # * Must be unique within the user project / location.
416
431
  #
417
- # If any of the above are not met, will raise an invalid argument error.
432
+ # If any of the above are not met, the API raises an invalid argument error.
418
433
  # @param instance [::Google::Cloud::Memcache::V1::Instance, ::Hash]
419
434
  # Required. A Memcached Instance
420
435
  #
@@ -510,6 +525,7 @@ module Google
510
525
  #
511
526
  # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
512
527
  # Required. Mask of fields to update.
528
+ #
513
529
  # * `displayName`
514
530
  # @param instance [::Google::Cloud::Memcache::V1::Instance, ::Hash]
515
531
  # Required. A Memcached Instance.
@@ -588,9 +604,10 @@ module Google
588
604
  end
589
605
 
590
606
  ##
591
- # Updates the defined Memcached Parameters for an existing Instance.
607
+ # Updates the defined Memcached parameters for an existing instance.
592
608
  # This method only stages the parameters, it must be followed by
593
- # ApplyParameters to apply the parameters to nodes of the Memcached Instance.
609
+ # `ApplyParameters` to apply the parameters to nodes of the Memcached
610
+ # instance.
594
611
  #
595
612
  # @overload update_parameters(request, options = nil)
596
613
  # Pass arguments to `update_parameters` via a request object, either of type
@@ -783,7 +800,7 @@ module Google
783
800
  end
784
801
 
785
802
  ##
786
- # ApplyParameters will restart the set of specified nodes in order to update
803
+ # `ApplyParameters` restarts the set of specified nodes in order to update
787
804
  # them to the current set of parameters for the Memcached Instance.
788
805
  #
789
806
  # @overload apply_parameters(request, options = nil)
@@ -805,11 +822,11 @@ module Google
805
822
  # Required. Resource name of the Memcached instance for which parameter group updates
806
823
  # should be applied.
807
824
  # @param node_ids [::Array<::String>]
808
- # Nodes to which we should apply the instance-level parameter group.
825
+ # Nodes to which the instance-level parameter group is applied.
809
826
  # @param apply_all [::Boolean]
810
827
  # Whether to apply instance-level parameter group to all nodes. If set to
811
- # true, will explicitly restrict users from specifying any nodes, and apply
812
- # parameter group updates to all nodes within the instance.
828
+ # true, users are restricted from specifying individual nodes, and
829
+ # `ApplyParameters` updates all nodes within the instance.
813
830
  #
814
831
  # @yield [response, operation] Access the result along with the RPC operation
815
832
  # @yieldparam response [::Gapic::Operation]
@@ -883,6 +900,107 @@ module Google
883
900
  raise ::Google::Cloud::Error.from_error(e)
884
901
  end
885
902
 
903
+ ##
904
+ # Reschedules upcoming maintenance event.
905
+ #
906
+ # @overload reschedule_maintenance(request, options = nil)
907
+ # Pass arguments to `reschedule_maintenance` via a request object, either of type
908
+ # {::Google::Cloud::Memcache::V1::RescheduleMaintenanceRequest} or an equivalent Hash.
909
+ #
910
+ # @param request [::Google::Cloud::Memcache::V1::RescheduleMaintenanceRequest, ::Hash]
911
+ # A request object representing the call parameters. Required. To specify no
912
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
913
+ # @param options [::Gapic::CallOptions, ::Hash]
914
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
915
+ #
916
+ # @overload reschedule_maintenance(instance: nil, reschedule_type: nil, schedule_time: nil)
917
+ # Pass arguments to `reschedule_maintenance` via keyword arguments. Note that at
918
+ # least one keyword argument is required. To specify no parameters, or to keep all
919
+ # the default parameter values, pass an empty Hash as a request object (see above).
920
+ #
921
+ # @param instance [::String]
922
+ # Required. Memcache instance resource name using the form:
923
+ # `projects/{project_id}/locations/{location_id}/instances/{instance_id}`
924
+ # where `location_id` refers to a GCP region.
925
+ # @param reschedule_type [::Google::Cloud::Memcache::V1::RescheduleMaintenanceRequest::RescheduleType]
926
+ # Required. If reschedule type is SPECIFIC_TIME, must set up schedule_time as well.
927
+ # @param schedule_time [::Google::Protobuf::Timestamp, ::Hash]
928
+ # Timestamp when the maintenance shall be rescheduled to if
929
+ # reschedule_type=SPECIFIC_TIME, in RFC 3339 format, for
930
+ # example `2012-11-15T16:19:00.094Z`.
931
+ #
932
+ # @yield [response, operation] Access the result along with the RPC operation
933
+ # @yieldparam response [::Gapic::Operation]
934
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
935
+ #
936
+ # @return [::Gapic::Operation]
937
+ #
938
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
939
+ #
940
+ # @example Basic example
941
+ # require "google/cloud/memcache/v1"
942
+ #
943
+ # # Create a client object. The client can be reused for multiple calls.
944
+ # client = Google::Cloud::Memcache::V1::CloudMemcache::Client.new
945
+ #
946
+ # # Create a request. To set request fields, pass in keyword arguments.
947
+ # request = Google::Cloud::Memcache::V1::RescheduleMaintenanceRequest.new
948
+ #
949
+ # # Call the reschedule_maintenance method.
950
+ # result = client.reschedule_maintenance request
951
+ #
952
+ # # The returned object is of type Gapic::Operation. You can use this
953
+ # # object to check the status of an operation, cancel it, or wait
954
+ # # for results. Here is how to block until completion:
955
+ # result.wait_until_done! timeout: 60
956
+ # if result.response?
957
+ # p result.response
958
+ # else
959
+ # puts "Error!"
960
+ # end
961
+ #
962
+ def reschedule_maintenance request, options = nil
963
+ raise ::ArgumentError, "request must be provided" if request.nil?
964
+
965
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1::RescheduleMaintenanceRequest
966
+
967
+ # Converts hash and nil to an options object
968
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
969
+
970
+ # Customize the options with defaults
971
+ metadata = @config.rpcs.reschedule_maintenance.metadata.to_h
972
+
973
+ # Set x-goog-api-client and x-goog-user-project headers
974
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
975
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
976
+ gapic_version: ::Google::Cloud::Memcache::V1::VERSION
977
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
978
+
979
+ header_params = {}
980
+ if request.instance
981
+ header_params["instance"] = request.instance
982
+ end
983
+
984
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
985
+ metadata[:"x-goog-request-params"] ||= request_params_header
986
+
987
+ options.apply_defaults timeout: @config.rpcs.reschedule_maintenance.timeout,
988
+ metadata: metadata,
989
+ retry_policy: @config.rpcs.reschedule_maintenance.retry_policy
990
+
991
+ options.apply_defaults timeout: @config.timeout,
992
+ metadata: @config.metadata,
993
+ retry_policy: @config.retry_policy
994
+
995
+ @cloud_memcache_stub.call_rpc :reschedule_maintenance, request, options: options do |response, operation|
996
+ response = ::Gapic::Operation.new response, @operations_client, options: options
997
+ yield response, operation if block_given?
998
+ return response
999
+ end
1000
+ rescue ::GRPC::BadStatus => e
1001
+ raise ::Google::Cloud::Error.from_error(e)
1002
+ end
1003
+
886
1004
  ##
887
1005
  # Configuration class for the CloudMemcache API.
888
1006
  #
@@ -1053,6 +1171,11 @@ module Google
1053
1171
  # @return [::Gapic::Config::Method]
1054
1172
  #
1055
1173
  attr_reader :apply_parameters
1174
+ ##
1175
+ # RPC-specific configuration for `reschedule_maintenance`
1176
+ # @return [::Gapic::Config::Method]
1177
+ #
1178
+ attr_reader :reschedule_maintenance
1056
1179
 
1057
1180
  # @private
1058
1181
  def initialize parent_rpcs = nil
@@ -1070,6 +1193,8 @@ module Google
1070
1193
  @delete_instance = ::Gapic::Config::Method.new delete_instance_config
1071
1194
  apply_parameters_config = parent_rpcs.apply_parameters if parent_rpcs.respond_to? :apply_parameters
1072
1195
  @apply_parameters = ::Gapic::Config::Method.new apply_parameters_config
1196
+ reschedule_maintenance_config = parent_rpcs.reschedule_maintenance if parent_rpcs.respond_to? :reschedule_maintenance
1197
+ @reschedule_maintenance = ::Gapic::Config::Method.new reschedule_maintenance_config
1073
1198
 
1074
1199
  yield self if block_given?
1075
1200
  end
@@ -8,8 +8,11 @@ require 'google/api/client_pb'
8
8
  require 'google/api/field_behavior_pb'
9
9
  require 'google/api/resource_pb'
10
10
  require 'google/longrunning/operations_pb'
11
+ require 'google/protobuf/duration_pb'
11
12
  require 'google/protobuf/field_mask_pb'
12
13
  require 'google/protobuf/timestamp_pb'
14
+ require 'google/type/dayofweek_pb'
15
+ require 'google/type/timeofday_pb'
13
16
 
14
17
  Google::Protobuf::DescriptorPool.generated_pool.build do
15
18
  add_file("google/cloud/memcache/v1/cloud_memcache.proto", :syntax => :proto3) do
@@ -30,6 +33,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
30
33
  optional :memcache_full_version, :string, 18
31
34
  repeated :instance_messages, :message, 19, "google.cloud.memcache.v1.Instance.InstanceMessage"
32
35
  optional :discovery_endpoint, :string, 20
36
+ optional :maintenance_policy, :message, 21, "google.cloud.memcache.v1.MaintenancePolicy"
37
+ optional :maintenance_schedule, :message, 22, "google.cloud.memcache.v1.MaintenanceSchedule"
33
38
  end
34
39
  add_message "google.cloud.memcache.v1.Instance.NodeConfig" do
35
40
  optional :cpu_count, :int32, 1
@@ -62,9 +67,37 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
62
67
  value :STATE_UNSPECIFIED, 0
63
68
  value :CREATING, 1
64
69
  value :READY, 2
70
+ value :UPDATING, 3
65
71
  value :DELETING, 4
66
72
  value :PERFORMING_MAINTENANCE, 5
67
73
  end
74
+ add_message "google.cloud.memcache.v1.MaintenancePolicy" do
75
+ optional :create_time, :message, 1, "google.protobuf.Timestamp"
76
+ optional :update_time, :message, 2, "google.protobuf.Timestamp"
77
+ optional :description, :string, 3
78
+ repeated :weekly_maintenance_window, :message, 4, "google.cloud.memcache.v1.WeeklyMaintenanceWindow"
79
+ end
80
+ add_message "google.cloud.memcache.v1.WeeklyMaintenanceWindow" do
81
+ optional :day, :enum, 1, "google.type.DayOfWeek"
82
+ optional :start_time, :message, 2, "google.type.TimeOfDay"
83
+ optional :duration, :message, 3, "google.protobuf.Duration"
84
+ end
85
+ add_message "google.cloud.memcache.v1.MaintenanceSchedule" do
86
+ optional :start_time, :message, 1, "google.protobuf.Timestamp"
87
+ optional :end_time, :message, 2, "google.protobuf.Timestamp"
88
+ optional :schedule_deadline_time, :message, 4, "google.protobuf.Timestamp"
89
+ end
90
+ add_message "google.cloud.memcache.v1.RescheduleMaintenanceRequest" do
91
+ optional :instance, :string, 1
92
+ optional :reschedule_type, :enum, 2, "google.cloud.memcache.v1.RescheduleMaintenanceRequest.RescheduleType"
93
+ optional :schedule_time, :message, 3, "google.protobuf.Timestamp"
94
+ end
95
+ add_enum "google.cloud.memcache.v1.RescheduleMaintenanceRequest.RescheduleType" do
96
+ value :RESCHEDULE_TYPE_UNSPECIFIED, 0
97
+ value :IMMEDIATE, 1
98
+ value :NEXT_AVAILABLE_WINDOW, 2
99
+ value :SPECIFIC_TIME, 3
100
+ end
68
101
  add_message "google.cloud.memcache.v1.ListInstancesRequest" do
69
102
  optional :parent, :string, 1
70
103
  optional :page_size, :int32, 2
@@ -115,6 +148,11 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
115
148
  optional :cancel_requested, :bool, 6
116
149
  optional :api_version, :string, 7
117
150
  end
151
+ add_message "google.cloud.memcache.v1.LocationMetadata" do
152
+ map :available_zones, :string, :message, 1, "google.cloud.memcache.v1.ZoneMetadata"
153
+ end
154
+ add_message "google.cloud.memcache.v1.ZoneMetadata" do
155
+ end
118
156
  add_enum "google.cloud.memcache.v1.MemcacheVersion" do
119
157
  value :MEMCACHE_VERSION_UNSPECIFIED, 0
120
158
  value :MEMCACHE_1_5, 1
@@ -133,6 +171,11 @@ module Google
133
171
  Instance::InstanceMessage = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.Instance.InstanceMessage").msgclass
134
172
  Instance::InstanceMessage::Code = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.Instance.InstanceMessage.Code").enummodule
135
173
  Instance::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.Instance.State").enummodule
174
+ MaintenancePolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.MaintenancePolicy").msgclass
175
+ WeeklyMaintenanceWindow = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.WeeklyMaintenanceWindow").msgclass
176
+ MaintenanceSchedule = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.MaintenanceSchedule").msgclass
177
+ RescheduleMaintenanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.RescheduleMaintenanceRequest").msgclass
178
+ RescheduleMaintenanceRequest::RescheduleType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.RescheduleMaintenanceRequest.RescheduleType").enummodule
136
179
  ListInstancesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.ListInstancesRequest").msgclass
137
180
  ListInstancesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.ListInstancesResponse").msgclass
138
181
  GetInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.GetInstanceRequest").msgclass
@@ -143,6 +186,8 @@ module Google
143
186
  UpdateParametersRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.UpdateParametersRequest").msgclass
144
187
  MemcacheParameters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.MemcacheParameters").msgclass
145
188
  OperationMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.OperationMetadata").msgclass
189
+ LocationMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.LocationMetadata").msgclass
190
+ ZoneMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.ZoneMetadata").msgclass
146
191
  MemcacheVersion = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.memcache.v1.MemcacheVersion").enummodule
147
192
  end
148
193
  end
@@ -55,15 +55,18 @@ module Google
55
55
  rpc :CreateInstance, ::Google::Cloud::Memcache::V1::CreateInstanceRequest, ::Google::Longrunning::Operation
56
56
  # Updates an existing Instance in a given project and location.
57
57
  rpc :UpdateInstance, ::Google::Cloud::Memcache::V1::UpdateInstanceRequest, ::Google::Longrunning::Operation
58
- # Updates the defined Memcached Parameters for an existing Instance.
58
+ # Updates the defined Memcached parameters for an existing instance.
59
59
  # This method only stages the parameters, it must be followed by
60
- # ApplyParameters to apply the parameters to nodes of the Memcached Instance.
60
+ # `ApplyParameters` to apply the parameters to nodes of the Memcached
61
+ # instance.
61
62
  rpc :UpdateParameters, ::Google::Cloud::Memcache::V1::UpdateParametersRequest, ::Google::Longrunning::Operation
62
63
  # Deletes a single Instance.
63
64
  rpc :DeleteInstance, ::Google::Cloud::Memcache::V1::DeleteInstanceRequest, ::Google::Longrunning::Operation
64
- # ApplyParameters will restart the set of specified nodes in order to update
65
+ # `ApplyParameters` restarts the set of specified nodes in order to update
65
66
  # them to the current set of parameters for the Memcached Instance.
66
67
  rpc :ApplyParameters, ::Google::Cloud::Memcache::V1::ApplyParametersRequest, ::Google::Longrunning::Operation
68
+ # Reschedules upcoming maintenance event.
69
+ rpc :RescheduleMaintenance, ::Google::Cloud::Memcache::V1::RescheduleMaintenanceRequest, ::Google::Longrunning::Operation
67
70
  end
68
71
 
69
72
  Stub = Service.rpc_stub_class
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Memcache
23
23
  module V1
24
- VERSION = "0.3.0"
24
+ VERSION = "0.4.0"
25
25
  end
26
26
  end
27
27
  end
@@ -0,0 +1,318 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Api
22
+ # Required information for every language.
23
+ # @!attribute [rw] reference_docs_uri
24
+ # @return [::String]
25
+ # Link to automatically generated reference documentation. Example:
26
+ # https://cloud.google.com/nodejs/docs/reference/asset/latest
27
+ # @!attribute [rw] destinations
28
+ # @return [::Array<::Google::Api::ClientLibraryDestination>]
29
+ # The destination where API teams want this client library to be published.
30
+ class CommonLanguageSettings
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+
35
+ # Details about how and where to publish client libraries.
36
+ # @!attribute [rw] version
37
+ # @return [::String]
38
+ # Version of the API to apply these settings to.
39
+ # @!attribute [rw] launch_stage
40
+ # @return [::Google::Api::LaunchStage]
41
+ # Launch stage of this version of the API.
42
+ # @!attribute [rw] rest_numeric_enums
43
+ # @return [::Boolean]
44
+ # When using transport=rest, the client request will encode enums as
45
+ # numbers rather than strings.
46
+ # @!attribute [rw] java_settings
47
+ # @return [::Google::Api::JavaSettings]
48
+ # Settings for legacy Java features, supported in the Service YAML.
49
+ # @!attribute [rw] cpp_settings
50
+ # @return [::Google::Api::CppSettings]
51
+ # Settings for C++ client libraries.
52
+ # @!attribute [rw] php_settings
53
+ # @return [::Google::Api::PhpSettings]
54
+ # Settings for PHP client libraries.
55
+ # @!attribute [rw] python_settings
56
+ # @return [::Google::Api::PythonSettings]
57
+ # Settings for Python client libraries.
58
+ # @!attribute [rw] node_settings
59
+ # @return [::Google::Api::NodeSettings]
60
+ # Settings for Node client libraries.
61
+ # @!attribute [rw] dotnet_settings
62
+ # @return [::Google::Api::DotnetSettings]
63
+ # Settings for .NET client libraries.
64
+ # @!attribute [rw] ruby_settings
65
+ # @return [::Google::Api::RubySettings]
66
+ # Settings for Ruby client libraries.
67
+ # @!attribute [rw] go_settings
68
+ # @return [::Google::Api::GoSettings]
69
+ # Settings for Go client libraries.
70
+ class ClientLibrarySettings
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+
75
+ # This message configures the settings for publishing [Google Cloud Client
76
+ # libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
77
+ # generated from the service config.
78
+ # @!attribute [rw] method_settings
79
+ # @return [::Array<::Google::Api::MethodSettings>]
80
+ # A list of API method settings, e.g. the behavior for methods that use the
81
+ # long-running operation pattern.
82
+ # @!attribute [rw] new_issue_uri
83
+ # @return [::String]
84
+ # Link to a place that API users can report issues. Example:
85
+ # https://issuetracker.google.com/issues/new?component=190865&template=1161103
86
+ # @!attribute [rw] documentation_uri
87
+ # @return [::String]
88
+ # Link to product home page. Example:
89
+ # https://cloud.google.com/asset-inventory/docs/overview
90
+ # @!attribute [rw] api_short_name
91
+ # @return [::String]
92
+ # Used as a tracking tag when collecting data about the APIs developer
93
+ # relations artifacts like docs, packages delivered to package managers,
94
+ # etc. Example: "speech".
95
+ # @!attribute [rw] github_label
96
+ # @return [::String]
97
+ # GitHub label to apply to issues and pull requests opened for this API.
98
+ # @!attribute [rw] codeowner_github_teams
99
+ # @return [::Array<::String>]
100
+ # GitHub teams to be added to CODEOWNERS in the directory in GitHub
101
+ # containing source code for the client libraries for this API.
102
+ # @!attribute [rw] doc_tag_prefix
103
+ # @return [::String]
104
+ # A prefix used in sample code when demarking regions to be included in
105
+ # documentation.
106
+ # @!attribute [rw] organization
107
+ # @return [::Google::Api::ClientLibraryOrganization]
108
+ # For whom the client library is being published.
109
+ # @!attribute [rw] library_settings
110
+ # @return [::Array<::Google::Api::ClientLibrarySettings>]
111
+ # Client library settings. If the same version string appears multiple
112
+ # times in this list, then the last one wins. Settings from earlier
113
+ # settings with the same version string are discarded.
114
+ class Publishing
115
+ include ::Google::Protobuf::MessageExts
116
+ extend ::Google::Protobuf::MessageExts::ClassMethods
117
+ end
118
+
119
+ # Settings for Java client libraries.
120
+ # @!attribute [rw] library_package
121
+ # @return [::String]
122
+ # The package name to use in Java. Clobbers the java_package option
123
+ # set in the protobuf. This should be used **only** by APIs
124
+ # who have already set the language_settings.java.package_name" field
125
+ # in gapic.yaml. API teams should use the protobuf java_package option
126
+ # where possible.
127
+ #
128
+ # Example of a YAML configuration::
129
+ #
130
+ # publishing:
131
+ # java_settings:
132
+ # library_package: com.google.cloud.pubsub.v1
133
+ # @!attribute [rw] service_class_names
134
+ # @return [::Google::Protobuf::Map{::String => ::String}]
135
+ # Configure the Java class name to use instead of the service's for its
136
+ # corresponding generated GAPIC client. Keys are fully-qualified
137
+ # service names as they appear in the protobuf (including the full
138
+ # the language_settings.java.interface_names" field in gapic.yaml. API
139
+ # teams should otherwise use the service name as it appears in the
140
+ # protobuf.
141
+ #
142
+ # Example of a YAML configuration::
143
+ #
144
+ # publishing:
145
+ # java_settings:
146
+ # service_class_names:
147
+ # - google.pubsub.v1.Publisher: TopicAdmin
148
+ # - google.pubsub.v1.Subscriber: SubscriptionAdmin
149
+ # @!attribute [rw] common
150
+ # @return [::Google::Api::CommonLanguageSettings]
151
+ # Some settings.
152
+ class JavaSettings
153
+ include ::Google::Protobuf::MessageExts
154
+ extend ::Google::Protobuf::MessageExts::ClassMethods
155
+
156
+ # @!attribute [rw] key
157
+ # @return [::String]
158
+ # @!attribute [rw] value
159
+ # @return [::String]
160
+ class ServiceClassNamesEntry
161
+ include ::Google::Protobuf::MessageExts
162
+ extend ::Google::Protobuf::MessageExts::ClassMethods
163
+ end
164
+ end
165
+
166
+ # Settings for C++ client libraries.
167
+ # @!attribute [rw] common
168
+ # @return [::Google::Api::CommonLanguageSettings]
169
+ # Some settings.
170
+ class CppSettings
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+ end
174
+
175
+ # Settings for Php client libraries.
176
+ # @!attribute [rw] common
177
+ # @return [::Google::Api::CommonLanguageSettings]
178
+ # Some settings.
179
+ class PhpSettings
180
+ include ::Google::Protobuf::MessageExts
181
+ extend ::Google::Protobuf::MessageExts::ClassMethods
182
+ end
183
+
184
+ # Settings for Python client libraries.
185
+ # @!attribute [rw] common
186
+ # @return [::Google::Api::CommonLanguageSettings]
187
+ # Some settings.
188
+ class PythonSettings
189
+ include ::Google::Protobuf::MessageExts
190
+ extend ::Google::Protobuf::MessageExts::ClassMethods
191
+ end
192
+
193
+ # Settings for Node client libraries.
194
+ # @!attribute [rw] common
195
+ # @return [::Google::Api::CommonLanguageSettings]
196
+ # Some settings.
197
+ class NodeSettings
198
+ include ::Google::Protobuf::MessageExts
199
+ extend ::Google::Protobuf::MessageExts::ClassMethods
200
+ end
201
+
202
+ # Settings for Dotnet client libraries.
203
+ # @!attribute [rw] common
204
+ # @return [::Google::Api::CommonLanguageSettings]
205
+ # Some settings.
206
+ class DotnetSettings
207
+ include ::Google::Protobuf::MessageExts
208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # Settings for Ruby client libraries.
212
+ # @!attribute [rw] common
213
+ # @return [::Google::Api::CommonLanguageSettings]
214
+ # Some settings.
215
+ class RubySettings
216
+ include ::Google::Protobuf::MessageExts
217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
218
+ end
219
+
220
+ # Settings for Go client libraries.
221
+ # @!attribute [rw] common
222
+ # @return [::Google::Api::CommonLanguageSettings]
223
+ # Some settings.
224
+ class GoSettings
225
+ include ::Google::Protobuf::MessageExts
226
+ extend ::Google::Protobuf::MessageExts::ClassMethods
227
+ end
228
+
229
+ # Describes the generator configuration for a method.
230
+ # @!attribute [rw] selector
231
+ # @return [::String]
232
+ # The fully qualified name of the method, for which the options below apply.
233
+ # This is used to find the method to apply the options.
234
+ # @!attribute [rw] long_running
235
+ # @return [::Google::Api::MethodSettings::LongRunning]
236
+ # Describes settings to use for long-running operations when generating
237
+ # API methods for RPCs. Complements RPCs that use the annotations in
238
+ # google/longrunning/operations.proto.
239
+ #
240
+ # Example of a YAML configuration::
241
+ #
242
+ # publishing:
243
+ # method_behavior:
244
+ # - selector: CreateAdDomain
245
+ # long_running:
246
+ # initial_poll_delay:
247
+ # seconds: 60 # 1 minute
248
+ # poll_delay_multiplier: 1.5
249
+ # max_poll_delay:
250
+ # seconds: 360 # 6 minutes
251
+ # total_poll_timeout:
252
+ # seconds: 54000 # 90 minutes
253
+ class MethodSettings
254
+ include ::Google::Protobuf::MessageExts
255
+ extend ::Google::Protobuf::MessageExts::ClassMethods
256
+
257
+ # Describes settings to use when generating API methods that use the
258
+ # long-running operation pattern.
259
+ # All default values below are from those used in the client library
260
+ # generators (e.g.
261
+ # [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).
262
+ # @!attribute [rw] initial_poll_delay
263
+ # @return [::Google::Protobuf::Duration]
264
+ # Initial delay after which the first poll request will be made.
265
+ # Default value: 5 seconds.
266
+ # @!attribute [rw] poll_delay_multiplier
267
+ # @return [::Float]
268
+ # Multiplier to gradually increase delay between subsequent polls until it
269
+ # reaches max_poll_delay.
270
+ # Default value: 1.5.
271
+ # @!attribute [rw] max_poll_delay
272
+ # @return [::Google::Protobuf::Duration]
273
+ # Maximum time between two subsequent poll requests.
274
+ # Default value: 45 seconds.
275
+ # @!attribute [rw] total_poll_timeout
276
+ # @return [::Google::Protobuf::Duration]
277
+ # Total polling timeout.
278
+ # Default value: 5 minutes.
279
+ class LongRunning
280
+ include ::Google::Protobuf::MessageExts
281
+ extend ::Google::Protobuf::MessageExts::ClassMethods
282
+ end
283
+ end
284
+
285
+ # The organization for which the client libraries are being published.
286
+ # Affects the url where generated docs are published, etc.
287
+ module ClientLibraryOrganization
288
+ # Not useful.
289
+ CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0
290
+
291
+ # Google Cloud Platform Org.
292
+ CLOUD = 1
293
+
294
+ # Ads (Advertising) Org.
295
+ ADS = 2
296
+
297
+ # Photos Org.
298
+ PHOTOS = 3
299
+
300
+ # Street View Org.
301
+ STREET_VIEW = 4
302
+ end
303
+
304
+ # To where should client libraries be published?
305
+ module ClientLibraryDestination
306
+ # Client libraries will neither be generated nor published to package
307
+ # managers.
308
+ CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0
309
+
310
+ # Generate the client library in a repo under github.com/googleapis,
311
+ # but don't publish it to package managers.
312
+ GITHUB = 10
313
+
314
+ # Publish the library to package managers like nuget.org and npmjs.com.
315
+ PACKAGE_MANAGER = 20
316
+ end
317
+ end
318
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Api
22
+ # The launch stage as defined by [Google Cloud Platform
23
+ # Launch Stages](https://cloud.google.com/terms/launch-stages).
24
+ module LaunchStage
25
+ # Do not use this default value.
26
+ LAUNCH_STAGE_UNSPECIFIED = 0
27
+
28
+ # The feature is not yet implemented. Users can not use it.
29
+ UNIMPLEMENTED = 6
30
+
31
+ # Prelaunch features are hidden from users and are only visible internally.
32
+ PRELAUNCH = 7
33
+
34
+ # Early Access features are limited to a closed group of testers. To use
35
+ # these features, you must sign up in advance and sign a Trusted Tester
36
+ # agreement (which includes confidentiality provisions). These features may
37
+ # be unstable, changed in backward-incompatible ways, and are not
38
+ # guaranteed to be released.
39
+ EARLY_ACCESS = 1
40
+
41
+ # Alpha is a limited availability test for releases before they are cleared
42
+ # for widespread use. By Alpha, all significant design issues are resolved
43
+ # and we are in the process of verifying functionality. Alpha customers
44
+ # need to apply for access, agree to applicable terms, and have their
45
+ # projects allowlisted. Alpha releases don't have to be feature complete,
46
+ # no SLAs are provided, and there are no technical support obligations, but
47
+ # they will be far enough along that customers can actually use them in
48
+ # test environments or for limited-use tests -- just like they would in
49
+ # normal production cases.
50
+ ALPHA = 2
51
+
52
+ # Beta is the point at which we are ready to open a release for any
53
+ # customer to use. There are no SLA or technical support obligations in a
54
+ # Beta release. Products will be complete from a feature perspective, but
55
+ # may have some open outstanding issues. Beta releases are suitable for
56
+ # limited production use cases.
57
+ BETA = 3
58
+
59
+ # GA features are open to all developers and are considered stable and
60
+ # fully qualified for production use.
61
+ GA = 4
62
+
63
+ # Deprecated features are scheduled to be shut down and removed. For more
64
+ # information, see the "Deprecation Policy" section of our [Terms of
65
+ # Service](https://cloud.google.com/terms/)
66
+ # and the [Google Cloud Platform Subject to the Deprecation
67
+ # Policy](https://cloud.google.com/terms/deprecation) documentation.
68
+ DEPRECATED = 5
69
+ end
70
+ end
71
+ end
@@ -21,19 +21,20 @@ module Google
21
21
  module Cloud
22
22
  module Memcache
23
23
  module V1
24
+ # A Memorystore for Memcached instance
24
25
  # @!attribute [rw] name
25
26
  # @return [::String]
26
27
  # Required. Unique name of the resource in this scope including project and
27
28
  # location using the form:
28
29
  # `projects/{project_id}/locations/{location_id}/instances/{instance_id}`
29
30
  #
30
- # Note: Memcached instances are managed and addressed at regional level so
31
- # location_id here refers to a GCP region; however, users may choose which
32
- # zones Memcached nodes within an instances should be provisioned in.
33
- # Refer to [zones] field for more details.
31
+ # Note: Memcached instances are managed and addressed at the regional level
32
+ # so `location_id` here refers to a Google Cloud region; however, users may
33
+ # choose which zones Memcached nodes should be provisioned in within an
34
+ # instance. Refer to {::Google::Cloud::Memcache::V1::Instance#zones zones} field for more details.
34
35
  # @!attribute [rw] display_name
35
36
  # @return [::String]
36
- # User provided name for the instance only used for display
37
+ # User provided name for the instance, which is only used for display
37
38
  # purposes. Cannot be more than 80 characters.
38
39
  # @!attribute [rw] labels
39
40
  # @return [::Google::Protobuf::Map{::String => ::String}]
@@ -48,7 +49,7 @@ module Google
48
49
  # will be used.
49
50
  # @!attribute [rw] zones
50
51
  # @return [::Array<::String>]
51
- # Zones where Memcached nodes should be provisioned in.
52
+ # Zones in which Memcached nodes should be provisioned.
52
53
  # Memcached nodes will be equally distributed across these zones. If not
53
54
  # provided, the service will by default create nodes in all zones in the
54
55
  # region for the instance.
@@ -62,17 +63,17 @@ module Google
62
63
  # @return [::Google::Cloud::Memcache::V1::MemcacheVersion]
63
64
  # The major version of Memcached software.
64
65
  # If not provided, latest supported version will be used. Currently the
65
- # latest supported major version is MEMCACHE_1_5.
66
+ # latest supported major version is `MEMCACHE_1_5`.
66
67
  # The minor version will be automatically determined by our system based on
67
68
  # the latest supported minor version.
68
69
  # @!attribute [rw] parameters
69
70
  # @return [::Google::Cloud::Memcache::V1::MemcacheParameters]
70
- # Optional: User defined parameters to apply to the memcached process
71
+ # User defined parameters to apply to the memcached process
71
72
  # on each node.
72
73
  # @!attribute [r] memcache_nodes
73
74
  # @return [::Array<::Google::Cloud::Memcache::V1::Instance::Node>]
74
75
  # Output only. List of Memcached nodes.
75
- # Refer to [Node] message for more details.
76
+ # Refer to {::Google::Cloud::Memcache::V1::Instance::Node Node} message for more details.
76
77
  # @!attribute [r] create_time
77
78
  # @return [::Google::Protobuf::Timestamp]
78
79
  # Output only. The time the instance was created.
@@ -90,10 +91,18 @@ module Google
90
91
  # The full version format will be "memcached-1.5.16".
91
92
  # @!attribute [rw] instance_messages
92
93
  # @return [::Array<::Google::Cloud::Memcache::V1::Instance::InstanceMessage>]
93
- # List of messages that describe current statuses of memcached instance.
94
+ # List of messages that describe the current state of the Memcached instance.
94
95
  # @!attribute [r] discovery_endpoint
95
96
  # @return [::String]
96
- # Output only. Endpoint for Discovery API
97
+ # Output only. Endpoint for the Discovery API.
98
+ # @!attribute [rw] maintenance_policy
99
+ # @return [::Google::Cloud::Memcache::V1::MaintenancePolicy]
100
+ # The maintenance policy for the instance. If not provided,
101
+ # the maintenance event will be performed based on Memorystore
102
+ # internal rollout schedule.
103
+ # @!attribute [r] maintenance_schedule
104
+ # @return [::Google::Cloud::Memcache::V1::MaintenanceSchedule]
105
+ # Output only. Published maintenance schedule.
97
106
  class Instance
98
107
  include ::Google::Protobuf::MessageExts
99
108
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -192,6 +201,10 @@ module Google
192
201
  # Memcached instance has been created and ready to be used.
193
202
  READY = 2
194
203
 
204
+ # Memcached instance is updating configuration such as maintenance policy
205
+ # and schedule.
206
+ UPDATING = 3
207
+
195
208
  # Memcached instance is being deleted.
196
209
  DELETING = 4
197
210
 
@@ -200,6 +213,93 @@ module Google
200
213
  end
201
214
  end
202
215
 
216
+ # Maintenance policy per instance.
217
+ # @!attribute [r] create_time
218
+ # @return [::Google::Protobuf::Timestamp]
219
+ # Output only. The time when the policy was created.
220
+ # @!attribute [r] update_time
221
+ # @return [::Google::Protobuf::Timestamp]
222
+ # Output only. The time when the policy was updated.
223
+ # @!attribute [rw] description
224
+ # @return [::String]
225
+ # Description of what this policy is for. Create/Update methods
226
+ # return INVALID_ARGUMENT if the length is greater than 512.
227
+ # @!attribute [rw] weekly_maintenance_window
228
+ # @return [::Array<::Google::Cloud::Memcache::V1::WeeklyMaintenanceWindow>]
229
+ # Required. Maintenance window that is applied to resources covered by this
230
+ # policy. Minimum 1. For the current version, the maximum number of
231
+ # weekly_maintenance_windows is expected to be one.
232
+ class MaintenancePolicy
233
+ include ::Google::Protobuf::MessageExts
234
+ extend ::Google::Protobuf::MessageExts::ClassMethods
235
+ end
236
+
237
+ # Time window specified for weekly operations.
238
+ # @!attribute [rw] day
239
+ # @return [::Google::Type::DayOfWeek]
240
+ # Required. Allows to define schedule that runs specified day of the week.
241
+ # @!attribute [rw] start_time
242
+ # @return [::Google::Type::TimeOfDay]
243
+ # Required. Start time of the window in UTC.
244
+ # @!attribute [rw] duration
245
+ # @return [::Google::Protobuf::Duration]
246
+ # Required. Duration of the time window.
247
+ class WeeklyMaintenanceWindow
248
+ include ::Google::Protobuf::MessageExts
249
+ extend ::Google::Protobuf::MessageExts::ClassMethods
250
+ end
251
+
252
+ # Upcoming maintenance schedule.
253
+ # @!attribute [r] start_time
254
+ # @return [::Google::Protobuf::Timestamp]
255
+ # Output only. The start time of any upcoming scheduled maintenance for this instance.
256
+ # @!attribute [r] end_time
257
+ # @return [::Google::Protobuf::Timestamp]
258
+ # Output only. The end time of any upcoming scheduled maintenance for this instance.
259
+ # @!attribute [r] schedule_deadline_time
260
+ # @return [::Google::Protobuf::Timestamp]
261
+ # Output only. The deadline that the maintenance schedule start time can not go beyond,
262
+ # including reschedule.
263
+ class MaintenanceSchedule
264
+ include ::Google::Protobuf::MessageExts
265
+ extend ::Google::Protobuf::MessageExts::ClassMethods
266
+ end
267
+
268
+ # Request for {::Google::Cloud::Memcache::V1::CloudMemcache::Client#reschedule_maintenance RescheduleMaintenance}.
269
+ # @!attribute [rw] instance
270
+ # @return [::String]
271
+ # Required. Memcache instance resource name using the form:
272
+ # `projects/{project_id}/locations/{location_id}/instances/{instance_id}`
273
+ # where `location_id` refers to a GCP region.
274
+ # @!attribute [rw] reschedule_type
275
+ # @return [::Google::Cloud::Memcache::V1::RescheduleMaintenanceRequest::RescheduleType]
276
+ # Required. If reschedule type is SPECIFIC_TIME, must set up schedule_time as well.
277
+ # @!attribute [rw] schedule_time
278
+ # @return [::Google::Protobuf::Timestamp]
279
+ # Timestamp when the maintenance shall be rescheduled to if
280
+ # reschedule_type=SPECIFIC_TIME, in RFC 3339 format, for
281
+ # example `2012-11-15T16:19:00.094Z`.
282
+ class RescheduleMaintenanceRequest
283
+ include ::Google::Protobuf::MessageExts
284
+ extend ::Google::Protobuf::MessageExts::ClassMethods
285
+
286
+ # Reschedule options.
287
+ module RescheduleType
288
+ # Not set.
289
+ RESCHEDULE_TYPE_UNSPECIFIED = 0
290
+
291
+ # If the user wants to schedule the maintenance to happen now.
292
+ IMMEDIATE = 1
293
+
294
+ # If the user wants to use the existing maintenance policy to find the
295
+ # next available window.
296
+ NEXT_AVAILABLE_WINDOW = 2
297
+
298
+ # If the user wants to reschedule the maintenance to a specific time.
299
+ SPECIFIC_TIME = 3
300
+ end
301
+ end
302
+
203
303
  # Request for {::Google::Cloud::Memcache::V1::CloudMemcache::Client#list_instances ListInstances}.
204
304
  # @!attribute [rw] parent
205
305
  # @return [::String]
@@ -211,18 +311,17 @@ module Google
211
311
  # The maximum number of items to return.
212
312
  #
213
313
  # If not specified, a default value of 1000 will be used by the service.
214
- # Regardless of the page_size value, the response may include a partial list
215
- # and a caller should only rely on response's
216
- # [next_page_token][CloudMemcache.ListInstancesResponse.next_page_token]
314
+ # Regardless of the `page_size` value, the response may include a partial
315
+ # list and a caller should only rely on response's
316
+ # {::Google::Cloud::Memcache::V1::ListInstancesResponse#next_page_token `next_page_token`}
217
317
  # to determine if there are more instances left to be queried.
218
318
  # @!attribute [rw] page_token
219
319
  # @return [::String]
220
- # The next_page_token value returned from a previous List request,
221
- # if any.
320
+ # The `next_page_token` value returned from a previous List request, if any.
222
321
  # @!attribute [rw] filter
223
322
  # @return [::String]
224
323
  # List filter. For example, exclude all Memcached instances with name as
225
- # my-instance by specifying "name != my-instance".
324
+ # my-instance by specifying `"name != my-instance"`.
226
325
  # @!attribute [rw] order_by
227
326
  # @return [::String]
228
327
  # Sort results. Supported values are "name", "name desc" or "" (unsorted).
@@ -277,9 +376,9 @@ module Google
277
376
  # * Must start with a letter.
278
377
  # * Must be between 1-40 characters.
279
378
  # * Must end with a number or a letter.
280
- # * Must be unique within the user project / location
379
+ # * Must be unique within the user project / location.
281
380
  #
282
- # If any of the above are not met, will raise an invalid argument error.
381
+ # If any of the above are not met, the API raises an invalid argument error.
283
382
  # @!attribute [rw] instance
284
383
  # @return [::Google::Cloud::Memcache::V1::Instance]
285
384
  # Required. A Memcached Instance
@@ -292,6 +391,7 @@ module Google
292
391
  # @!attribute [rw] update_mask
293
392
  # @return [::Google::Protobuf::FieldMask]
294
393
  # Required. Mask of fields to update.
394
+ #
295
395
  # * `displayName`
296
396
  # @!attribute [rw] instance
297
397
  # @return [::Google::Cloud::Memcache::V1::Instance]
@@ -320,12 +420,12 @@ module Google
320
420
  # should be applied.
321
421
  # @!attribute [rw] node_ids
322
422
  # @return [::Array<::String>]
323
- # Nodes to which we should apply the instance-level parameter group.
423
+ # Nodes to which the instance-level parameter group is applied.
324
424
  # @!attribute [rw] apply_all
325
425
  # @return [::Boolean]
326
426
  # Whether to apply instance-level parameter group to all nodes. If set to
327
- # true, will explicitly restrict users from specifying any nodes, and apply
328
- # parameter group updates to all nodes within the instance.
427
+ # true, users are restricted from specifying individual nodes, and
428
+ # `ApplyParameters` updates all nodes within the instance.
329
429
  class ApplyParametersRequest
330
430
  include ::Google::Protobuf::MessageExts
331
431
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -351,8 +451,9 @@ module Google
351
451
  # @return [::String]
352
452
  # Output only. The unique ID associated with this set of parameters. Users
353
453
  # can use this id to determine if the parameters associated with the instance
354
- # differ from the parameters associated with the nodes and any action needs
355
- # to be taken to apply parameters on nodes.
454
+ # differ from the parameters associated with the nodes. A discrepancy between
455
+ # parameter ids can inform users that they may need to take action to apply
456
+ # parameters on nodes.
356
457
  # @!attribute [rw] params
357
458
  # @return [::Google::Protobuf::Map{::String => ::String}]
358
459
  # User defined set of parameters to use in the memcached process.
@@ -400,6 +501,31 @@ module Google
400
501
  extend ::Google::Protobuf::MessageExts::ClassMethods
401
502
  end
402
503
 
504
+ # Metadata for the given `::Google::Cloud::Location::Location`.
505
+ # @!attribute [r] available_zones
506
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Memcache::V1::ZoneMetadata}]
507
+ # Output only. The set of available zones in the location. The map is keyed
508
+ # by the lowercase ID of each zone, as defined by GCE. These keys can be
509
+ # specified in the `zones` field when creating a Memcached instance.
510
+ class LocationMetadata
511
+ include ::Google::Protobuf::MessageExts
512
+ extend ::Google::Protobuf::MessageExts::ClassMethods
513
+
514
+ # @!attribute [rw] key
515
+ # @return [::String]
516
+ # @!attribute [rw] value
517
+ # @return [::Google::Cloud::Memcache::V1::ZoneMetadata]
518
+ class AvailableZonesEntry
519
+ include ::Google::Protobuf::MessageExts
520
+ extend ::Google::Protobuf::MessageExts::ClassMethods
521
+ end
522
+ end
523
+
524
+ class ZoneMetadata
525
+ include ::Google::Protobuf::MessageExts
526
+ extend ::Google::Protobuf::MessageExts::ClassMethods
527
+ end
528
+
403
529
  # Memcached versions supported by our service.
404
530
  module MemcacheVersion
405
531
  MEMCACHE_VERSION_UNSPECIFIED = 0
@@ -26,8 +26,6 @@ module Google
26
26
  # service Foo {
27
27
  # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
28
28
  # }
29
- #
30
- # The JSON representation for `Empty` is empty JSON object `{}`.
31
29
  class Empty
32
30
  include ::Google::Protobuf::MessageExts
33
31
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Type
22
+ # Represents a day of the week.
23
+ module DayOfWeek
24
+ # The day of the week is unspecified.
25
+ DAY_OF_WEEK_UNSPECIFIED = 0
26
+
27
+ # Monday
28
+ MONDAY = 1
29
+
30
+ # Tuesday
31
+ TUESDAY = 2
32
+
33
+ # Wednesday
34
+ WEDNESDAY = 3
35
+
36
+ # Thursday
37
+ THURSDAY = 4
38
+
39
+ # Friday
40
+ FRIDAY = 5
41
+
42
+ # Saturday
43
+ SATURDAY = 6
44
+
45
+ # Sunday
46
+ SUNDAY = 7
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Type
22
+ # Represents a time of day. The date and time zone are either not significant
23
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
24
+ # types are [google.type.Date][google.type.Date] and
25
+ # `google.protobuf.Timestamp`.
26
+ # @!attribute [rw] hours
27
+ # @return [::Integer]
28
+ # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
29
+ # to allow the value "24:00:00" for scenarios like business closing time.
30
+ # @!attribute [rw] minutes
31
+ # @return [::Integer]
32
+ # Minutes of hour of day. Must be from 0 to 59.
33
+ # @!attribute [rw] seconds
34
+ # @return [::Integer]
35
+ # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
36
+ # allow the value 60 if it allows leap-seconds.
37
+ # @!attribute [rw] nanos
38
+ # @return [::Integer]
39
+ # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
40
+ class TimeOfDay
41
+ include ::Google::Protobuf::MessageExts
42
+ extend ::Google::Protobuf::MessageExts::ClassMethods
43
+ end
44
+ end
45
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-memcache-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-07-05 00:00:00.000000000 Z
11
+ date: 2022-11-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0.10'
19
+ version: '0.12'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 2.a
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '0.10'
29
+ version: '0.12'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: 2.a
@@ -44,6 +44,26 @@ dependencies:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '1.0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: google-cloud-location
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0.0'
54
+ - - "<"
55
+ - !ruby/object:Gem::Version
56
+ version: 2.a
57
+ type: :runtime
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: '0.0'
64
+ - - "<"
65
+ - !ruby/object:Gem::Version
66
+ version: 2.a
47
67
  - !ruby/object:Gem::Dependency
48
68
  name: google-style
49
69
  requirement: !ruby/object:Gem::Requirement
@@ -180,7 +200,9 @@ files:
180
200
  - lib/google/cloud/memcache/v1/cloud_memcache_services_pb.rb
181
201
  - lib/google/cloud/memcache/v1/version.rb
182
202
  - proto_docs/README.md
203
+ - proto_docs/google/api/client.rb
183
204
  - proto_docs/google/api/field_behavior.rb
205
+ - proto_docs/google/api/launch_stage.rb
184
206
  - proto_docs/google/api/resource.rb
185
207
  - proto_docs/google/cloud/memcache/v1/cloud_memcache.rb
186
208
  - proto_docs/google/longrunning/operations.rb
@@ -190,6 +212,8 @@ files:
190
212
  - proto_docs/google/protobuf/field_mask.rb
191
213
  - proto_docs/google/protobuf/timestamp.rb
192
214
  - proto_docs/google/rpc/status.rb
215
+ - proto_docs/google/type/dayofweek.rb
216
+ - proto_docs/google/type/timeofday.rb
193
217
  homepage: https://github.com/googleapis/google-cloud-ruby
194
218
  licenses:
195
219
  - Apache-2.0