google-cloud-backupdr-v1 0.a → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/backupdr/v1/backupdr/client.rb +826 -0
  6. data/lib/google/cloud/backupdr/v1/backupdr/credentials.rb +47 -0
  7. data/lib/google/cloud/backupdr/v1/backupdr/operations.rb +801 -0
  8. data/lib/google/cloud/backupdr/v1/backupdr/paths.rb +69 -0
  9. data/lib/google/cloud/backupdr/v1/backupdr/rest/client.rb +780 -0
  10. data/lib/google/cloud/backupdr/v1/backupdr/rest/operations.rb +895 -0
  11. data/lib/google/cloud/backupdr/v1/backupdr/rest/service_stub.rb +306 -0
  12. data/lib/google/cloud/backupdr/v1/backupdr/rest.rb +54 -0
  13. data/lib/google/cloud/backupdr/v1/backupdr.rb +56 -0
  14. data/lib/google/cloud/backupdr/v1/backupdr_pb.rb +64 -0
  15. data/lib/google/cloud/backupdr/v1/backupdr_services_pb.rb +51 -0
  16. data/lib/google/cloud/backupdr/v1/bindings_override.rb +143 -0
  17. data/lib/google/cloud/backupdr/v1/rest.rb +38 -0
  18. data/lib/google/cloud/backupdr/v1/version.rb +8 -3
  19. data/lib/google/cloud/backupdr/v1.rb +45 -0
  20. data/lib/google-cloud-backupdr-v1.rb +21 -0
  21. data/proto_docs/README.md +4 -0
  22. data/proto_docs/google/api/client.rb +399 -0
  23. data/proto_docs/google/api/field_behavior.rb +85 -0
  24. data/proto_docs/google/api/launch_stage.rb +71 -0
  25. data/proto_docs/google/api/resource.rb +222 -0
  26. data/proto_docs/google/cloud/backupdr/v1/backupdr.rb +356 -0
  27. data/proto_docs/google/longrunning/operations.rb +164 -0
  28. data/proto_docs/google/protobuf/any.rb +145 -0
  29. data/proto_docs/google/protobuf/duration.rb +98 -0
  30. data/proto_docs/google/protobuf/empty.rb +34 -0
  31. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  32. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  33. data/proto_docs/google/rpc/status.rb +48 -0
  34. data/proto_docs/google/type/expr.rb +75 -0
  35. metadata +113 -9
@@ -0,0 +1,356 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module BackupDR
23
+ module V1
24
+ # Network configuration for ManagementServer instance.
25
+ # @!attribute [rw] network
26
+ # @return [::String]
27
+ # Optional. The resource name of the Google Compute Engine VPC network to
28
+ # which the ManagementServer instance is connected.
29
+ # @!attribute [rw] peering_mode
30
+ # @return [::Google::Cloud::BackupDR::V1::NetworkConfig::PeeringMode]
31
+ # Optional. The network connect mode of the ManagementServer instance. For
32
+ # this version, only PRIVATE_SERVICE_ACCESS is supported.
33
+ class NetworkConfig
34
+ include ::Google::Protobuf::MessageExts
35
+ extend ::Google::Protobuf::MessageExts::ClassMethods
36
+
37
+ # VPC peering modes supported by Cloud BackupDR.
38
+ module PeeringMode
39
+ # Peering mode not set.
40
+ PEERING_MODE_UNSPECIFIED = 0
41
+
42
+ # Connect using Private Service Access to the Management Server. Private
43
+ # services access provides an IP address range for multiple Google Cloud
44
+ # services, including Cloud BackupDR.
45
+ PRIVATE_SERVICE_ACCESS = 1
46
+ end
47
+ end
48
+
49
+ # ManagementURI for the Management Server resource.
50
+ # @!attribute [r] web_ui
51
+ # @return [::String]
52
+ # Output only. The ManagementServer AGM/RD WebUI URL.
53
+ # @!attribute [r] api
54
+ # @return [::String]
55
+ # Output only. The ManagementServer AGM/RD API URL.
56
+ class ManagementURI
57
+ include ::Google::Protobuf::MessageExts
58
+ extend ::Google::Protobuf::MessageExts::ClassMethods
59
+ end
60
+
61
+ # ManagementURI depending on the Workforce Identity i.e. either 1p or 3p.
62
+ # @!attribute [r] first_party_management_uri
63
+ # @return [::String]
64
+ # Output only. First party Management URI for Google Identities.
65
+ # @!attribute [r] third_party_management_uri
66
+ # @return [::String]
67
+ # Output only. Third party Management URI for External Identity Providers.
68
+ class WorkforceIdentityBasedManagementURI
69
+ include ::Google::Protobuf::MessageExts
70
+ extend ::Google::Protobuf::MessageExts::ClassMethods
71
+ end
72
+
73
+ # OAuth Client ID depending on the Workforce Identity i.e. either 1p or 3p,
74
+ # @!attribute [r] first_party_oauth2_client_id
75
+ # @return [::String]
76
+ # Output only. First party OAuth Client ID for Google Identities.
77
+ # @!attribute [r] third_party_oauth2_client_id
78
+ # @return [::String]
79
+ # Output only. Third party OAuth Client ID for External Identity Providers.
80
+ class WorkforceIdentityBasedOAuth2ClientID
81
+ include ::Google::Protobuf::MessageExts
82
+ extend ::Google::Protobuf::MessageExts::ClassMethods
83
+ end
84
+
85
+ # ManagementServer describes a single BackupDR ManagementServer instance.
86
+ # @!attribute [r] name
87
+ # @return [::String]
88
+ # Output only. Identifier. The resource name.
89
+ # @!attribute [rw] description
90
+ # @return [::String]
91
+ # Optional. The description of the ManagementServer instance (2048 characters
92
+ # or less).
93
+ # @!attribute [rw] labels
94
+ # @return [::Google::Protobuf::Map{::String => ::String}]
95
+ # Optional. Resource labels to represent user provided metadata.
96
+ # Labels currently defined:
97
+ # 1. migrate_from_go=<false|true>
98
+ # If set to true, the MS is created in migration ready mode.
99
+ # @!attribute [r] create_time
100
+ # @return [::Google::Protobuf::Timestamp]
101
+ # Output only. The time when the instance was created.
102
+ # @!attribute [r] update_time
103
+ # @return [::Google::Protobuf::Timestamp]
104
+ # Output only. The time when the instance was updated.
105
+ # @!attribute [rw] type
106
+ # @return [::Google::Cloud::BackupDR::V1::ManagementServer::InstanceType]
107
+ # Optional. The type of the ManagementServer resource.
108
+ # @!attribute [r] management_uri
109
+ # @return [::Google::Cloud::BackupDR::V1::ManagementURI]
110
+ # Output only. The hostname or ip address of the exposed AGM endpoints, used
111
+ # by clients to connect to AGM/RD graphical user interface and APIs.
112
+ # @!attribute [r] workforce_identity_based_management_uri
113
+ # @return [::Google::Cloud::BackupDR::V1::WorkforceIdentityBasedManagementURI]
114
+ # Output only. The hostnames of the exposed AGM endpoints for both types of
115
+ # user i.e. 1p and 3p, used to connect AGM/RM UI.
116
+ # @!attribute [r] state
117
+ # @return [::Google::Cloud::BackupDR::V1::ManagementServer::InstanceState]
118
+ # Output only. The ManagementServer state.
119
+ # @!attribute [rw] networks
120
+ # @return [::Array<::Google::Cloud::BackupDR::V1::NetworkConfig>]
121
+ # Required. VPC networks to which the ManagementServer instance is connected.
122
+ # For this version, only a single network is supported.
123
+ # @!attribute [rw] etag
124
+ # @return [::String]
125
+ # Optional. Server specified ETag for the ManagementServer resource to
126
+ # prevent simultaneous updates from overwiting each other.
127
+ # @!attribute [r] oauth2_client_id
128
+ # @return [::String]
129
+ # Output only. The OAuth 2.0 client id is required to make API calls to the
130
+ # BackupDR instance API of this ManagementServer. This is the value that
131
+ # should be provided in the ‘aud’ field of the OIDC ID Token (see openid
132
+ # specification
133
+ # https://openid.net/specs/openid-connect-core-1_0.html#IDToken).
134
+ # @!attribute [r] workforce_identity_based_oauth2_client_id
135
+ # @return [::Google::Cloud::BackupDR::V1::WorkforceIdentityBasedOAuth2ClientID]
136
+ # Output only. The OAuth client IDs for both types of user i.e. 1p and 3p.
137
+ # @!attribute [r] ba_proxy_uri
138
+ # @return [::Array<::String>]
139
+ # Output only. The hostname or ip address of the exposed AGM endpoints, used
140
+ # by BAs to connect to BA proxy.
141
+ class ManagementServer
142
+ include ::Google::Protobuf::MessageExts
143
+ extend ::Google::Protobuf::MessageExts::ClassMethods
144
+
145
+ # @!attribute [rw] key
146
+ # @return [::String]
147
+ # @!attribute [rw] value
148
+ # @return [::String]
149
+ class LabelsEntry
150
+ include ::Google::Protobuf::MessageExts
151
+ extend ::Google::Protobuf::MessageExts::ClassMethods
152
+ end
153
+
154
+ # Type of backup service resource.
155
+ module InstanceType
156
+ # Instance type is not mentioned.
157
+ INSTANCE_TYPE_UNSPECIFIED = 0
158
+
159
+ # Instance for backup and restore management (i.e., AGM).
160
+ BACKUP_RESTORE = 1
161
+ end
162
+
163
+ # State of Management server instance.
164
+ module InstanceState
165
+ # State not set.
166
+ INSTANCE_STATE_UNSPECIFIED = 0
167
+
168
+ # The instance is being created.
169
+ CREATING = 1
170
+
171
+ # The instance has been created and is fully usable.
172
+ READY = 2
173
+
174
+ # The instance configuration is being updated. Certain kinds of updates
175
+ # may cause the instance to become unusable while the update is in
176
+ # progress.
177
+ UPDATING = 3
178
+
179
+ # The instance is being deleted.
180
+ DELETING = 4
181
+
182
+ # The instance is being repaired and may be unstable.
183
+ REPAIRING = 5
184
+
185
+ # Maintenance is being performed on this instance.
186
+ MAINTENANCE = 6
187
+
188
+ # The instance is experiencing an issue and might be unusable. You can get
189
+ # further details from the statusMessage field of Instance resource.
190
+ ERROR = 7
191
+ end
192
+ end
193
+
194
+ # Request message for listing management servers.
195
+ # @!attribute [rw] parent
196
+ # @return [::String]
197
+ # Required. The project and location for which to retrieve management servers
198
+ # information, in the format `projects/{project_id}/locations/{location}`. In
199
+ # Cloud BackupDR, locations map to GCP regions, for example **us-central1**.
200
+ # To retrieve management servers for all locations, use "-" for the
201
+ # `{location}` value.
202
+ # @!attribute [rw] page_size
203
+ # @return [::Integer]
204
+ # Optional. Requested page size. Server may return fewer items than
205
+ # requested. If unspecified, server will pick an appropriate default.
206
+ # @!attribute [rw] page_token
207
+ # @return [::String]
208
+ # Optional. A token identifying a page of results the server should return.
209
+ # @!attribute [rw] filter
210
+ # @return [::String]
211
+ # Optional. Filtering results.
212
+ # @!attribute [rw] order_by
213
+ # @return [::String]
214
+ # Optional. Hint for how to order the results.
215
+ class ListManagementServersRequest
216
+ include ::Google::Protobuf::MessageExts
217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
218
+ end
219
+
220
+ # Response message for listing management servers.
221
+ # @!attribute [rw] management_servers
222
+ # @return [::Array<::Google::Cloud::BackupDR::V1::ManagementServer>]
223
+ # The list of ManagementServer instances in the project for the specified
224
+ # location.
225
+ #
226
+ # If the `{location}` value in the request is "-", the response contains a
227
+ # list of instances from all locations. In case any location is unreachable,
228
+ # the response will only return management servers in reachable locations and
229
+ # the 'unreachable' field will be populated with a list of unreachable
230
+ # locations.
231
+ # @!attribute [rw] next_page_token
232
+ # @return [::String]
233
+ # A token identifying a page of results the server should return.
234
+ # @!attribute [rw] unreachable
235
+ # @return [::Array<::String>]
236
+ # Locations that could not be reached.
237
+ class ListManagementServersResponse
238
+ include ::Google::Protobuf::MessageExts
239
+ extend ::Google::Protobuf::MessageExts::ClassMethods
240
+ end
241
+
242
+ # Request message for getting a management server instance.
243
+ # @!attribute [rw] name
244
+ # @return [::String]
245
+ # Required. Name of the management server resource name, in the format
246
+ # `projects/{project_id}/locations/{location}/managementServers/{resource_name}`
247
+ class GetManagementServerRequest
248
+ include ::Google::Protobuf::MessageExts
249
+ extend ::Google::Protobuf::MessageExts::ClassMethods
250
+ end
251
+
252
+ # Request message for creating a management server instance.
253
+ # @!attribute [rw] parent
254
+ # @return [::String]
255
+ # Required. The management server project and location in the format
256
+ # `projects/{project_id}/locations/{location}`. In Cloud Backup and DR
257
+ # locations map to GCP regions, for example **us-central1**.
258
+ # @!attribute [rw] management_server_id
259
+ # @return [::String]
260
+ # Required. The name of the management server to create. The name must be
261
+ # unique for the specified project and location.
262
+ # @!attribute [rw] management_server
263
+ # @return [::Google::Cloud::BackupDR::V1::ManagementServer]
264
+ # Required. A [management server
265
+ # resource][google.cloud.backupdr.v1.ManagementServer]
266
+ # @!attribute [rw] request_id
267
+ # @return [::String]
268
+ # Optional. An optional request ID to identify requests. Specify a unique
269
+ # request ID so that if you must retry your request, the server will know to
270
+ # ignore the request if it has already been completed. The server will
271
+ # guarantee that for at least 60 minutes since the first request.
272
+ #
273
+ # For example, consider a situation where you make an initial request and
274
+ # the request times out. If you make the request again with the same request
275
+ # ID, the server can check if original operation with the same request ID
276
+ # was received, and if so, will ignore the second request. This prevents
277
+ # clients from accidentally creating duplicate commitments.
278
+ #
279
+ # The request ID must be a valid UUID with the exception that zero UUID is
280
+ # not supported (00000000-0000-0000-0000-000000000000).
281
+ class CreateManagementServerRequest
282
+ include ::Google::Protobuf::MessageExts
283
+ extend ::Google::Protobuf::MessageExts::ClassMethods
284
+ end
285
+
286
+ # Request message for deleting a management server instance.
287
+ # @!attribute [rw] name
288
+ # @return [::String]
289
+ # Required. Name of the resource
290
+ # @!attribute [rw] request_id
291
+ # @return [::String]
292
+ # Optional. An optional request ID to identify requests. Specify a unique
293
+ # request ID so that if you must retry your request, the server will know to
294
+ # ignore the request if it has already been completed. The server will
295
+ # guarantee that for at least 60 minutes after the first request.
296
+ #
297
+ # For example, consider a situation where you make an initial request and
298
+ # the request times out. If you make the request again with the same request
299
+ # ID, the server can check if original operation with the same request ID
300
+ # was received, and if so, will ignore the second request. This prevents
301
+ # clients from accidentally creating duplicate commitments.
302
+ #
303
+ # The request ID must be a valid UUID with the exception that zero UUID is
304
+ # not supported (00000000-0000-0000-0000-000000000000).
305
+ class DeleteManagementServerRequest
306
+ include ::Google::Protobuf::MessageExts
307
+ extend ::Google::Protobuf::MessageExts::ClassMethods
308
+ end
309
+
310
+ # Represents the metadata of the long-running operation.
311
+ # @!attribute [r] create_time
312
+ # @return [::Google::Protobuf::Timestamp]
313
+ # Output only. The time the operation was created.
314
+ # @!attribute [r] end_time
315
+ # @return [::Google::Protobuf::Timestamp]
316
+ # Output only. The time the operation finished running.
317
+ # @!attribute [r] target
318
+ # @return [::String]
319
+ # Output only. Server-defined resource path for the target of the operation.
320
+ # @!attribute [r] verb
321
+ # @return [::String]
322
+ # Output only. Name of the verb executed by the operation.
323
+ # @!attribute [r] status_message
324
+ # @return [::String]
325
+ # Output only. Human-readable status of the operation, if any.
326
+ # @!attribute [r] requested_cancellation
327
+ # @return [::Boolean]
328
+ # Output only. Identifies whether the user has requested cancellation
329
+ # of the operation. Operations that have successfully been cancelled
330
+ # have [Operation.error][] value with a
331
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of 1, corresponding to
332
+ # `Code.CANCELLED`.
333
+ # @!attribute [r] api_version
334
+ # @return [::String]
335
+ # Output only. API version used to start the operation.
336
+ # @!attribute [r] additional_info
337
+ # @return [::Google::Protobuf::Map{::String => ::String}]
338
+ # Output only. AdditionalInfo contains additional Info related to backup plan
339
+ # association resource.
340
+ class OperationMetadata
341
+ include ::Google::Protobuf::MessageExts
342
+ extend ::Google::Protobuf::MessageExts::ClassMethods
343
+
344
+ # @!attribute [rw] key
345
+ # @return [::String]
346
+ # @!attribute [rw] value
347
+ # @return [::String]
348
+ class AdditionalInfoEntry
349
+ include ::Google::Protobuf::MessageExts
350
+ extend ::Google::Protobuf::MessageExts::ClassMethods
351
+ end
352
+ end
353
+ end
354
+ end
355
+ end
356
+ end
@@ -0,0 +1,164 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 Longrunning
22
+ # This resource represents a long-running operation that is the result of a
23
+ # network API call.
24
+ # @!attribute [rw] name
25
+ # @return [::String]
26
+ # The server-assigned name, which is only unique within the same service that
27
+ # originally returns it. If you use the default HTTP mapping, the
28
+ # `name` should be a resource name ending with `operations/{unique_id}`.
29
+ # @!attribute [rw] metadata
30
+ # @return [::Google::Protobuf::Any]
31
+ # Service-specific metadata associated with the operation. It typically
32
+ # contains progress information and common metadata such as create time.
33
+ # Some services might not provide such metadata. Any method that returns a
34
+ # long-running operation should document the metadata type, if any.
35
+ # @!attribute [rw] done
36
+ # @return [::Boolean]
37
+ # If the value is `false`, it means the operation is still in progress.
38
+ # If `true`, the operation is completed, and either `error` or `response` is
39
+ # available.
40
+ # @!attribute [rw] error
41
+ # @return [::Google::Rpc::Status]
42
+ # The error result of the operation in case of failure or cancellation.
43
+ # @!attribute [rw] response
44
+ # @return [::Google::Protobuf::Any]
45
+ # The normal response of the operation in case of success. If the original
46
+ # method returns no data on success, such as `Delete`, the response is
47
+ # `google.protobuf.Empty`. If the original method is standard
48
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
49
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
50
+ # is the original method name. For example, if the original method name
51
+ # is `TakeSnapshot()`, the inferred response type is
52
+ # `TakeSnapshotResponse`.
53
+ class Operation
54
+ include ::Google::Protobuf::MessageExts
55
+ extend ::Google::Protobuf::MessageExts::ClassMethods
56
+ end
57
+
58
+ # The request message for Operations.GetOperation.
59
+ # @!attribute [rw] name
60
+ # @return [::String]
61
+ # The name of the operation resource.
62
+ class GetOperationRequest
63
+ include ::Google::Protobuf::MessageExts
64
+ extend ::Google::Protobuf::MessageExts::ClassMethods
65
+ end
66
+
67
+ # The request message for Operations.ListOperations.
68
+ # @!attribute [rw] name
69
+ # @return [::String]
70
+ # The name of the operation's parent resource.
71
+ # @!attribute [rw] filter
72
+ # @return [::String]
73
+ # The standard list filter.
74
+ # @!attribute [rw] page_size
75
+ # @return [::Integer]
76
+ # The standard list page size.
77
+ # @!attribute [rw] page_token
78
+ # @return [::String]
79
+ # The standard list page token.
80
+ class ListOperationsRequest
81
+ include ::Google::Protobuf::MessageExts
82
+ extend ::Google::Protobuf::MessageExts::ClassMethods
83
+ end
84
+
85
+ # The response message for Operations.ListOperations.
86
+ # @!attribute [rw] operations
87
+ # @return [::Array<::Google::Longrunning::Operation>]
88
+ # A list of operations that matches the specified filter in the request.
89
+ # @!attribute [rw] next_page_token
90
+ # @return [::String]
91
+ # The standard List next-page token.
92
+ class ListOperationsResponse
93
+ include ::Google::Protobuf::MessageExts
94
+ extend ::Google::Protobuf::MessageExts::ClassMethods
95
+ end
96
+
97
+ # The request message for Operations.CancelOperation.
98
+ # @!attribute [rw] name
99
+ # @return [::String]
100
+ # The name of the operation resource to be cancelled.
101
+ class CancelOperationRequest
102
+ include ::Google::Protobuf::MessageExts
103
+ extend ::Google::Protobuf::MessageExts::ClassMethods
104
+ end
105
+
106
+ # The request message for Operations.DeleteOperation.
107
+ # @!attribute [rw] name
108
+ # @return [::String]
109
+ # The name of the operation resource to be deleted.
110
+ class DeleteOperationRequest
111
+ include ::Google::Protobuf::MessageExts
112
+ extend ::Google::Protobuf::MessageExts::ClassMethods
113
+ end
114
+
115
+ # The request message for Operations.WaitOperation.
116
+ # @!attribute [rw] name
117
+ # @return [::String]
118
+ # The name of the operation resource to wait on.
119
+ # @!attribute [rw] timeout
120
+ # @return [::Google::Protobuf::Duration]
121
+ # The maximum duration to wait before timing out. If left blank, the wait
122
+ # will be at most the time permitted by the underlying HTTP/RPC protocol.
123
+ # If RPC context deadline is also specified, the shorter one will be used.
124
+ class WaitOperationRequest
125
+ include ::Google::Protobuf::MessageExts
126
+ extend ::Google::Protobuf::MessageExts::ClassMethods
127
+ end
128
+
129
+ # A message representing the message types used by a long-running operation.
130
+ #
131
+ # Example:
132
+ #
133
+ # rpc LongRunningRecognize(LongRunningRecognizeRequest)
134
+ # returns (google.longrunning.Operation) {
135
+ # option (google.longrunning.operation_info) = {
136
+ # response_type: "LongRunningRecognizeResponse"
137
+ # metadata_type: "LongRunningRecognizeMetadata"
138
+ # };
139
+ # }
140
+ # @!attribute [rw] response_type
141
+ # @return [::String]
142
+ # Required. The message name of the primary return type for this
143
+ # long-running operation.
144
+ # This type will be used to deserialize the LRO's response.
145
+ #
146
+ # If the response is in a different package from the rpc, a fully-qualified
147
+ # message name must be used (e.g. `google.protobuf.Struct`).
148
+ #
149
+ # Note: Altering this value constitutes a breaking change.
150
+ # @!attribute [rw] metadata_type
151
+ # @return [::String]
152
+ # Required. The message name of the metadata type for this long-running
153
+ # operation.
154
+ #
155
+ # If the response is in a different package from the rpc, a fully-qualified
156
+ # message name must be used (e.g. `google.protobuf.Struct`).
157
+ #
158
+ # Note: Altering this value constitutes a breaking change.
159
+ class OperationInfo
160
+ include ::Google::Protobuf::MessageExts
161
+ extend ::Google::Protobuf::MessageExts::ClassMethods
162
+ end
163
+ end
164
+ end
@@ -0,0 +1,145 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 Protobuf
22
+ # `Any` contains an arbitrary serialized protocol buffer message along with a
23
+ # URL that describes the type of the serialized message.
24
+ #
25
+ # Protobuf library provides support to pack/unpack Any values in the form
26
+ # of utility functions or additional generated methods of the Any type.
27
+ #
28
+ # Example 1: Pack and unpack a message in C++.
29
+ #
30
+ # Foo foo = ...;
31
+ # Any any;
32
+ # any.PackFrom(foo);
33
+ # ...
34
+ # if (any.UnpackTo(&foo)) {
35
+ # ...
36
+ # }
37
+ #
38
+ # Example 2: Pack and unpack a message in Java.
39
+ #
40
+ # Foo foo = ...;
41
+ # Any any = Any.pack(foo);
42
+ # ...
43
+ # if (any.is(Foo.class)) {
44
+ # foo = any.unpack(Foo.class);
45
+ # }
46
+ # // or ...
47
+ # if (any.isSameTypeAs(Foo.getDefaultInstance())) {
48
+ # foo = any.unpack(Foo.getDefaultInstance());
49
+ # }
50
+ #
51
+ # Example 3: Pack and unpack a message in Python.
52
+ #
53
+ # foo = Foo(...)
54
+ # any = Any()
55
+ # any.Pack(foo)
56
+ # ...
57
+ # if any.Is(Foo.DESCRIPTOR):
58
+ # any.Unpack(foo)
59
+ # ...
60
+ #
61
+ # Example 4: Pack and unpack a message in Go
62
+ #
63
+ # foo := &pb.Foo{...}
64
+ # any, err := anypb.New(foo)
65
+ # if err != nil {
66
+ # ...
67
+ # }
68
+ # ...
69
+ # foo := &pb.Foo{}
70
+ # if err := any.UnmarshalTo(foo); err != nil {
71
+ # ...
72
+ # }
73
+ #
74
+ # The pack methods provided by protobuf library will by default use
75
+ # 'type.googleapis.com/full.type.name' as the type URL and the unpack
76
+ # methods only use the fully qualified type name after the last '/'
77
+ # in the type URL, for example "foo.bar.com/x/y.z" will yield type
78
+ # name "y.z".
79
+ #
80
+ # JSON
81
+ # ====
82
+ # The JSON representation of an `Any` value uses the regular
83
+ # representation of the deserialized, embedded message, with an
84
+ # additional field `@type` which contains the type URL. Example:
85
+ #
86
+ # package google.profile;
87
+ # message Person {
88
+ # string first_name = 1;
89
+ # string last_name = 2;
90
+ # }
91
+ #
92
+ # {
93
+ # "@type": "type.googleapis.com/google.profile.Person",
94
+ # "firstName": <string>,
95
+ # "lastName": <string>
96
+ # }
97
+ #
98
+ # If the embedded message type is well-known and has a custom JSON
99
+ # representation, that representation will be embedded adding a field
100
+ # `value` which holds the custom JSON in addition to the `@type`
101
+ # field. Example (for message [google.protobuf.Duration][]):
102
+ #
103
+ # {
104
+ # "@type": "type.googleapis.com/google.protobuf.Duration",
105
+ # "value": "1.212s"
106
+ # }
107
+ # @!attribute [rw] type_url
108
+ # @return [::String]
109
+ # A URL/resource name that uniquely identifies the type of the serialized
110
+ # protocol buffer message. This string must contain at least
111
+ # one "/" character. The last segment of the URL's path must represent
112
+ # the fully qualified name of the type (as in
113
+ # `path/google.protobuf.Duration`). The name should be in a canonical form
114
+ # (e.g., leading "." is not accepted).
115
+ #
116
+ # In practice, teams usually precompile into the binary all types that they
117
+ # expect it to use in the context of Any. However, for URLs which use the
118
+ # scheme `http`, `https`, or no scheme, one can optionally set up a type
119
+ # server that maps type URLs to message definitions as follows:
120
+ #
121
+ # * If no scheme is provided, `https` is assumed.
122
+ # * An HTTP GET on the URL must yield a [google.protobuf.Type][]
123
+ # value in binary format, or produce an error.
124
+ # * Applications are allowed to cache lookup results based on the
125
+ # URL, or have them precompiled into a binary to avoid any
126
+ # lookup. Therefore, binary compatibility needs to be preserved
127
+ # on changes to types. (Use versioned type names to manage
128
+ # breaking changes.)
129
+ #
130
+ # Note: this functionality is not currently available in the official
131
+ # protobuf release, and it is not used for type URLs beginning with
132
+ # type.googleapis.com. As of May 2023, there are no widely used type server
133
+ # implementations and no plans to implement one.
134
+ #
135
+ # Schemes other than `http`, `https` (or the empty scheme) might be
136
+ # used with implementation specific semantics.
137
+ # @!attribute [rw] value
138
+ # @return [::String]
139
+ # Must be a valid serialized protocol buffer of the above specified type.
140
+ class Any
141
+ include ::Google::Protobuf::MessageExts
142
+ extend ::Google::Protobuf::MessageExts::ClassMethods
143
+ end
144
+ end
145
+ end