google-cloud-datastream-v1alpha1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +167 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +139 -0
  6. data/lib/google/cloud/datastream/v1alpha1/datastream/client.rb +2192 -0
  7. data/lib/google/cloud/datastream/v1alpha1/datastream/credentials.rb +47 -0
  8. data/lib/google/cloud/datastream/v1alpha1/datastream/operations.rb +664 -0
  9. data/lib/google/cloud/datastream/v1alpha1/datastream/paths.rb +128 -0
  10. data/lib/google/cloud/datastream/v1alpha1/datastream.rb +50 -0
  11. data/lib/google/cloud/datastream/v1alpha1/datastream_pb.rb +216 -0
  12. data/lib/google/cloud/datastream/v1alpha1/datastream_resources_pb.rb +314 -0
  13. data/lib/google/cloud/datastream/v1alpha1/datastream_services_pb.rb +94 -0
  14. data/lib/google/cloud/datastream/v1alpha1/version.rb +28 -0
  15. data/lib/google/cloud/datastream/v1alpha1.rb +38 -0
  16. data/lib/google-cloud-datastream-v1alpha1.rb +21 -0
  17. data/proto_docs/README.md +4 -0
  18. data/proto_docs/google/api/field_behavior.rb +71 -0
  19. data/proto_docs/google/api/resource.rb +283 -0
  20. data/proto_docs/google/cloud/datastream/v1alpha1/datastream.rb +638 -0
  21. data/proto_docs/google/cloud/datastream/v1alpha1/datastream_resources.rb +788 -0
  22. data/proto_docs/google/longrunning/operations.rb +164 -0
  23. data/proto_docs/google/protobuf/any.rb +141 -0
  24. data/proto_docs/google/protobuf/duration.rb +98 -0
  25. data/proto_docs/google/protobuf/empty.rb +36 -0
  26. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  27. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  28. data/proto_docs/google/rpc/status.rb +46 -0
  29. metadata +220 -0
@@ -0,0 +1,788 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 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 Datastream
23
+ module V1alpha1
24
+ # Oracle database profile.
25
+ # @!attribute [rw] hostname
26
+ # @return [::String]
27
+ # Required. Hostname for the Oracle connection.
28
+ # @!attribute [rw] port
29
+ # @return [::Integer]
30
+ # Port for the Oracle connection, default value is 1521.
31
+ # @!attribute [rw] username
32
+ # @return [::String]
33
+ # Required. Username for the Oracle connection.
34
+ # @!attribute [rw] password
35
+ # @return [::String]
36
+ # Required. Password for the Oracle connection.
37
+ # @!attribute [rw] database_service
38
+ # @return [::String]
39
+ # Required. Database for the Oracle connection.
40
+ # @!attribute [rw] connection_attributes
41
+ # @return [::Google::Protobuf::Map{::String => ::String}]
42
+ # Connection string attributes
43
+ class OracleProfile
44
+ include ::Google::Protobuf::MessageExts
45
+ extend ::Google::Protobuf::MessageExts::ClassMethods
46
+
47
+ # @!attribute [rw] key
48
+ # @return [::String]
49
+ # @!attribute [rw] value
50
+ # @return [::String]
51
+ class ConnectionAttributesEntry
52
+ include ::Google::Protobuf::MessageExts
53
+ extend ::Google::Protobuf::MessageExts::ClassMethods
54
+ end
55
+ end
56
+
57
+ # MySQL database profile.
58
+ # @!attribute [rw] hostname
59
+ # @return [::String]
60
+ # Required. Hostname for the MySQL connection.
61
+ # @!attribute [rw] port
62
+ # @return [::Integer]
63
+ # Port for the MySQL connection, default value is 3306.
64
+ # @!attribute [rw] username
65
+ # @return [::String]
66
+ # Required. Username for the MySQL connection.
67
+ # @!attribute [rw] password
68
+ # @return [::String]
69
+ # Required. Input only. Password for the MySQL connection.
70
+ # @!attribute [rw] ssl_config
71
+ # @return [::Google::Cloud::Datastream::V1alpha1::MysqlSslConfig]
72
+ # SSL configuration for the MySQL connection.
73
+ class MysqlProfile
74
+ include ::Google::Protobuf::MessageExts
75
+ extend ::Google::Protobuf::MessageExts::ClassMethods
76
+ end
77
+
78
+ # Cloud Storage bucket profile.
79
+ # @!attribute [rw] bucket_name
80
+ # @return [::String]
81
+ # Required. The full project and resource path for Cloud Storage bucket including the
82
+ # name.
83
+ # @!attribute [rw] root_path
84
+ # @return [::String]
85
+ # The root path inside the Cloud Storage bucket.
86
+ class GcsProfile
87
+ include ::Google::Protobuf::MessageExts
88
+ extend ::Google::Protobuf::MessageExts::ClassMethods
89
+ end
90
+
91
+ # No connectivity settings.
92
+ class NoConnectivitySettings
93
+ include ::Google::Protobuf::MessageExts
94
+ extend ::Google::Protobuf::MessageExts::ClassMethods
95
+ end
96
+
97
+ # Static IP address connectivity.
98
+ class StaticServiceIpConnectivity
99
+ include ::Google::Protobuf::MessageExts
100
+ extend ::Google::Protobuf::MessageExts::ClassMethods
101
+ end
102
+
103
+ # Forward SSH Tunnel connectivity.
104
+ # @!attribute [rw] hostname
105
+ # @return [::String]
106
+ # Required. Hostname for the SSH tunnel.
107
+ # @!attribute [rw] username
108
+ # @return [::String]
109
+ # Required. Username for the SSH tunnel.
110
+ # @!attribute [rw] port
111
+ # @return [::Integer]
112
+ # Port for the SSH tunnel, default value is 22.
113
+ # @!attribute [rw] password
114
+ # @return [::String]
115
+ # Input only. SSH password.
116
+ # @!attribute [rw] private_key
117
+ # @return [::String]
118
+ # Input only. SSH private key.
119
+ class ForwardSshTunnelConnectivity
120
+ include ::Google::Protobuf::MessageExts
121
+ extend ::Google::Protobuf::MessageExts::ClassMethods
122
+ end
123
+
124
+ # The VPC Peering configuration is used to create VPC peering between
125
+ # Datastream and the consumer's VPC.
126
+ # @!attribute [rw] vpc_name
127
+ # @return [::String]
128
+ # Required. fully qualified name of the VPC Datastream will peer to.
129
+ # @!attribute [rw] subnet
130
+ # @return [::String]
131
+ # Required. A free subnet for peering. (CIDR of /29)
132
+ class VpcPeeringConfig
133
+ include ::Google::Protobuf::MessageExts
134
+ extend ::Google::Protobuf::MessageExts::ClassMethods
135
+ end
136
+
137
+ # The PrivateConnection resource is used to establish private connectivity
138
+ # between Datastream and a customer's network.
139
+ # @!attribute [r] name
140
+ # @return [::String]
141
+ # Output only. The resource's name.
142
+ # @!attribute [r] create_time
143
+ # @return [::Google::Protobuf::Timestamp]
144
+ # Output only. The create time of the resource.
145
+ # @!attribute [r] update_time
146
+ # @return [::Google::Protobuf::Timestamp]
147
+ # Output only. The update time of the resource.
148
+ # @!attribute [rw] labels
149
+ # @return [::Google::Protobuf::Map{::String => ::String}]
150
+ # Labels.
151
+ # @!attribute [rw] display_name
152
+ # @return [::String]
153
+ # Required. Display name.
154
+ # @!attribute [r] state
155
+ # @return [::Google::Cloud::Datastream::V1alpha1::PrivateConnection::State]
156
+ # Output only. The state of the Private Connection.
157
+ # @!attribute [r] error
158
+ # @return [::Google::Cloud::Datastream::V1alpha1::Error]
159
+ # Output only. In case of error, the details of the error in a user-friendly format.
160
+ # @!attribute [rw] vpc_peering_config
161
+ # @return [::Google::Cloud::Datastream::V1alpha1::VpcPeeringConfig]
162
+ # VPC Peering Config
163
+ class PrivateConnection
164
+ include ::Google::Protobuf::MessageExts
165
+ extend ::Google::Protobuf::MessageExts::ClassMethods
166
+
167
+ # @!attribute [rw] key
168
+ # @return [::String]
169
+ # @!attribute [rw] value
170
+ # @return [::String]
171
+ class LabelsEntry
172
+ include ::Google::Protobuf::MessageExts
173
+ extend ::Google::Protobuf::MessageExts::ClassMethods
174
+ end
175
+
176
+ # Private Connection state.
177
+ module State
178
+ STATE_UNSPECIFIED = 0
179
+
180
+ # The private connection is in creation state - creating resources.
181
+ CREATING = 1
182
+
183
+ # The private connection has been created with all of it's resources.
184
+ CREATED = 2
185
+
186
+ # The private connection creation has failed.
187
+ FAILED = 3
188
+ end
189
+ end
190
+
191
+ # Private Connectivity
192
+ # @!attribute [rw] private_connection_name
193
+ # @return [::String]
194
+ class PrivateConnectivity
195
+ include ::Google::Protobuf::MessageExts
196
+ extend ::Google::Protobuf::MessageExts::ClassMethods
197
+ end
198
+
199
+ # The Route resource is the child of the PrivateConnection resource.
200
+ # It used to define a route for a PrivateConnection setup.
201
+ # @!attribute [r] name
202
+ # @return [::String]
203
+ # Output only. The resource's name.
204
+ # @!attribute [r] create_time
205
+ # @return [::Google::Protobuf::Timestamp]
206
+ # Output only. The create time of the resource.
207
+ # @!attribute [r] update_time
208
+ # @return [::Google::Protobuf::Timestamp]
209
+ # Output only. The update time of the resource.
210
+ # @!attribute [rw] labels
211
+ # @return [::Google::Protobuf::Map{::String => ::String}]
212
+ # Labels.
213
+ # @!attribute [rw] display_name
214
+ # @return [::String]
215
+ # Required. Display name.
216
+ # @!attribute [rw] destination_address
217
+ # @return [::String]
218
+ # Required. Destination address for connection
219
+ # @!attribute [rw] destination_port
220
+ # @return [::Integer]
221
+ # Destination port for connection
222
+ class Route
223
+ include ::Google::Protobuf::MessageExts
224
+ extend ::Google::Protobuf::MessageExts::ClassMethods
225
+
226
+ # @!attribute [rw] key
227
+ # @return [::String]
228
+ # @!attribute [rw] value
229
+ # @return [::String]
230
+ class LabelsEntry
231
+ include ::Google::Protobuf::MessageExts
232
+ extend ::Google::Protobuf::MessageExts::ClassMethods
233
+ end
234
+ end
235
+
236
+ # MySQL SSL configuration information.
237
+ # @!attribute [rw] client_key
238
+ # @return [::String]
239
+ # Input only. PEM-encoded private key associated with the Client Certificate.
240
+ # If this field is used then the 'client_certificate' and the
241
+ # 'ca_certificate' fields are mandatory.
242
+ # @!attribute [r] client_key_set
243
+ # @return [::Boolean]
244
+ # Output only. Indicates whether the client_key field is set.
245
+ # @!attribute [rw] client_certificate
246
+ # @return [::String]
247
+ # Input only. PEM-encoded certificate that will be used by the replica to
248
+ # authenticate against the source database server. If this field is used
249
+ # then the 'client_key' and the 'ca_certificate' fields are mandatory.
250
+ # @!attribute [r] client_certificate_set
251
+ # @return [::Boolean]
252
+ # Output only. Indicates whether the client_certificate field is set.
253
+ # @!attribute [rw] ca_certificate
254
+ # @return [::String]
255
+ # Input only. PEM-encoded certificate of the CA that signed the source database
256
+ # server's certificate.
257
+ # @!attribute [r] ca_certificate_set
258
+ # @return [::Boolean]
259
+ # Output only. Indicates whether the ca_certificate field is set.
260
+ class MysqlSslConfig
261
+ include ::Google::Protobuf::MessageExts
262
+ extend ::Google::Protobuf::MessageExts::ClassMethods
263
+ end
264
+
265
+ # @!attribute [r] name
266
+ # @return [::String]
267
+ # Output only. The resource's name.
268
+ # @!attribute [r] create_time
269
+ # @return [::Google::Protobuf::Timestamp]
270
+ # Output only. The create time of the resource.
271
+ # @!attribute [r] update_time
272
+ # @return [::Google::Protobuf::Timestamp]
273
+ # Output only. The update time of the resource.
274
+ # @!attribute [rw] labels
275
+ # @return [::Google::Protobuf::Map{::String => ::String}]
276
+ # Labels.
277
+ # @!attribute [rw] display_name
278
+ # @return [::String]
279
+ # Required. Display name.
280
+ # @!attribute [rw] oracle_profile
281
+ # @return [::Google::Cloud::Datastream::V1alpha1::OracleProfile]
282
+ # Oracle ConnectionProfile configuration.
283
+ # @!attribute [rw] gcs_profile
284
+ # @return [::Google::Cloud::Datastream::V1alpha1::GcsProfile]
285
+ # Cloud Storage ConnectionProfile configuration.
286
+ # @!attribute [rw] mysql_profile
287
+ # @return [::Google::Cloud::Datastream::V1alpha1::MysqlProfile]
288
+ # MySQL ConnectionProfile configuration.
289
+ # @!attribute [rw] no_connectivity
290
+ # @return [::Google::Cloud::Datastream::V1alpha1::NoConnectivitySettings]
291
+ # No connectivity option chosen.
292
+ # @!attribute [rw] static_service_ip_connectivity
293
+ # @return [::Google::Cloud::Datastream::V1alpha1::StaticServiceIpConnectivity]
294
+ # Static Service IP connectivity.
295
+ # @!attribute [rw] forward_ssh_connectivity
296
+ # @return [::Google::Cloud::Datastream::V1alpha1::ForwardSshTunnelConnectivity]
297
+ # Forward SSH tunnel connectivity.
298
+ # @!attribute [rw] private_connectivity
299
+ # @return [::Google::Cloud::Datastream::V1alpha1::PrivateConnectivity]
300
+ # Private connectivity.
301
+ class ConnectionProfile
302
+ include ::Google::Protobuf::MessageExts
303
+ extend ::Google::Protobuf::MessageExts::ClassMethods
304
+
305
+ # @!attribute [rw] key
306
+ # @return [::String]
307
+ # @!attribute [rw] value
308
+ # @return [::String]
309
+ class LabelsEntry
310
+ include ::Google::Protobuf::MessageExts
311
+ extend ::Google::Protobuf::MessageExts::ClassMethods
312
+ end
313
+ end
314
+
315
+ # Oracle Column.
316
+ # @!attribute [rw] column_name
317
+ # @return [::String]
318
+ # Column name.
319
+ # @!attribute [rw] data_type
320
+ # @return [::String]
321
+ # The Oracle data type.
322
+ # @!attribute [rw] length
323
+ # @return [::Integer]
324
+ # Column length.
325
+ # @!attribute [rw] precision
326
+ # @return [::Integer]
327
+ # Column precision.
328
+ # @!attribute [rw] scale
329
+ # @return [::Integer]
330
+ # Column scale.
331
+ # @!attribute [rw] encoding
332
+ # @return [::String]
333
+ # Column encoding.
334
+ # @!attribute [rw] primary_key
335
+ # @return [::Boolean]
336
+ # Whether or not the column represents a primary key.
337
+ # @!attribute [rw] nullable
338
+ # @return [::Boolean]
339
+ # Whether or not the column can accept a null value.
340
+ # @!attribute [rw] ordinal_position
341
+ # @return [::Integer]
342
+ # The ordinal position of the column in the table.
343
+ class OracleColumn
344
+ include ::Google::Protobuf::MessageExts
345
+ extend ::Google::Protobuf::MessageExts::ClassMethods
346
+ end
347
+
348
+ # Oracle table.
349
+ # @!attribute [rw] table_name
350
+ # @return [::String]
351
+ # Table name.
352
+ # @!attribute [rw] oracle_columns
353
+ # @return [::Array<::Google::Cloud::Datastream::V1alpha1::OracleColumn>]
354
+ # Oracle columns in the schema.
355
+ # When unspecified as part of inclue/exclude lists, includes/excludes
356
+ # everything.
357
+ class OracleTable
358
+ include ::Google::Protobuf::MessageExts
359
+ extend ::Google::Protobuf::MessageExts::ClassMethods
360
+ end
361
+
362
+ # Oracle schema.
363
+ # @!attribute [rw] schema_name
364
+ # @return [::String]
365
+ # Schema name.
366
+ # @!attribute [rw] oracle_tables
367
+ # @return [::Array<::Google::Cloud::Datastream::V1alpha1::OracleTable>]
368
+ # Tables in the schema.
369
+ class OracleSchema
370
+ include ::Google::Protobuf::MessageExts
371
+ extend ::Google::Protobuf::MessageExts::ClassMethods
372
+ end
373
+
374
+ # Oracle database structure.
375
+ # @!attribute [rw] oracle_schemas
376
+ # @return [::Array<::Google::Cloud::Datastream::V1alpha1::OracleSchema>]
377
+ # Oracle schemas/databases in the database server.
378
+ class OracleRdbms
379
+ include ::Google::Protobuf::MessageExts
380
+ extend ::Google::Protobuf::MessageExts::ClassMethods
381
+ end
382
+
383
+ # Oracle data source configuration
384
+ # @!attribute [rw] allowlist
385
+ # @return [::Google::Cloud::Datastream::V1alpha1::OracleRdbms]
386
+ # Oracle objects to include in the stream.
387
+ # @!attribute [rw] rejectlist
388
+ # @return [::Google::Cloud::Datastream::V1alpha1::OracleRdbms]
389
+ # Oracle objects to exclude from the stream.
390
+ class OracleSourceConfig
391
+ include ::Google::Protobuf::MessageExts
392
+ extend ::Google::Protobuf::MessageExts::ClassMethods
393
+ end
394
+
395
+ # MySQL Column.
396
+ # @!attribute [rw] column_name
397
+ # @return [::String]
398
+ # Column name.
399
+ # @!attribute [rw] data_type
400
+ # @return [::String]
401
+ # The MySQL data type. Full data types list can be found here:
402
+ # https://dev.mysql.com/doc/refman/8.0/en/data-types.html
403
+ # @!attribute [rw] length
404
+ # @return [::Integer]
405
+ # Column length.
406
+ # @!attribute [rw] collation
407
+ # @return [::String]
408
+ # Column collation.
409
+ # @!attribute [rw] primary_key
410
+ # @return [::Boolean]
411
+ # Whether or not the column represents a primary key.
412
+ # @!attribute [rw] nullable
413
+ # @return [::Boolean]
414
+ # Whether or not the column can accept a null value.
415
+ # @!attribute [rw] ordinal_position
416
+ # @return [::Integer]
417
+ # The ordinal position of the column in the table.
418
+ class MysqlColumn
419
+ include ::Google::Protobuf::MessageExts
420
+ extend ::Google::Protobuf::MessageExts::ClassMethods
421
+ end
422
+
423
+ # MySQL table.
424
+ # @!attribute [rw] table_name
425
+ # @return [::String]
426
+ # Table name.
427
+ # @!attribute [rw] mysql_columns
428
+ # @return [::Array<::Google::Cloud::Datastream::V1alpha1::MysqlColumn>]
429
+ # MySQL columns in the database.
430
+ # When unspecified as part of include/exclude lists, includes/excludes
431
+ # everything.
432
+ class MysqlTable
433
+ include ::Google::Protobuf::MessageExts
434
+ extend ::Google::Protobuf::MessageExts::ClassMethods
435
+ end
436
+
437
+ # MySQL database.
438
+ # @!attribute [rw] database_name
439
+ # @return [::String]
440
+ # Database name.
441
+ # @!attribute [rw] mysql_tables
442
+ # @return [::Array<::Google::Cloud::Datastream::V1alpha1::MysqlTable>]
443
+ # Tables in the database.
444
+ class MysqlDatabase
445
+ include ::Google::Protobuf::MessageExts
446
+ extend ::Google::Protobuf::MessageExts::ClassMethods
447
+ end
448
+
449
+ # MySQL database structure
450
+ # @!attribute [rw] mysql_databases
451
+ # @return [::Array<::Google::Cloud::Datastream::V1alpha1::MysqlDatabase>]
452
+ # Mysql databases on the server
453
+ class MysqlRdbms
454
+ include ::Google::Protobuf::MessageExts
455
+ extend ::Google::Protobuf::MessageExts::ClassMethods
456
+ end
457
+
458
+ # MySQL source configuration
459
+ # @!attribute [rw] allowlist
460
+ # @return [::Google::Cloud::Datastream::V1alpha1::MysqlRdbms]
461
+ # MySQL objects to retrieve from the source.
462
+ # @!attribute [rw] rejectlist
463
+ # @return [::Google::Cloud::Datastream::V1alpha1::MysqlRdbms]
464
+ # MySQL objects to exclude from the stream.
465
+ class MysqlSourceConfig
466
+ include ::Google::Protobuf::MessageExts
467
+ extend ::Google::Protobuf::MessageExts::ClassMethods
468
+ end
469
+
470
+ # The configuration of the stream source.
471
+ # @!attribute [rw] source_connection_profile_name
472
+ # @return [::String]
473
+ # Required. Source connection profile identifier.
474
+ # @!attribute [rw] oracle_source_config
475
+ # @return [::Google::Cloud::Datastream::V1alpha1::OracleSourceConfig]
476
+ # Oracle data source configuration
477
+ # @!attribute [rw] mysql_source_config
478
+ # @return [::Google::Cloud::Datastream::V1alpha1::MysqlSourceConfig]
479
+ # MySQL data source configuration
480
+ class SourceConfig
481
+ include ::Google::Protobuf::MessageExts
482
+ extend ::Google::Protobuf::MessageExts::ClassMethods
483
+ end
484
+
485
+ # AVRO file format configuration.
486
+ class AvroFileFormat
487
+ include ::Google::Protobuf::MessageExts
488
+ extend ::Google::Protobuf::MessageExts::ClassMethods
489
+ end
490
+
491
+ # JSON file format configuration.
492
+ # @!attribute [rw] schema_file_format
493
+ # @return [::Google::Cloud::Datastream::V1alpha1::SchemaFileFormat]
494
+ # The schema file format along JSON data files.
495
+ # @!attribute [rw] compression
496
+ # @return [::Google::Cloud::Datastream::V1alpha1::JsonFileFormat::JsonCompression]
497
+ # Compression of the loaded JSON file.
498
+ class JsonFileFormat
499
+ include ::Google::Protobuf::MessageExts
500
+ extend ::Google::Protobuf::MessageExts::ClassMethods
501
+
502
+ # Json file compression.
503
+ module JsonCompression
504
+ # Unspecified json file compression.
505
+ JSON_COMPRESSION_UNSPECIFIED = 0
506
+
507
+ # Do not compress JSON file.
508
+ NO_COMPRESSION = 1
509
+
510
+ # Gzip compression.
511
+ GZIP = 2
512
+ end
513
+ end
514
+
515
+ # Google Cloud Storage destination configuration
516
+ # @!attribute [rw] path
517
+ # @return [::String]
518
+ # Path inside the Cloud Storage bucket to write data to.
519
+ # @!attribute [rw] gcs_file_format
520
+ # @return [::Google::Cloud::Datastream::V1alpha1::GcsFileFormat]
521
+ # File format that data should be written in.
522
+ # Deprecated field - use file_format instead.
523
+ # @!attribute [rw] file_rotation_mb
524
+ # @return [::Integer]
525
+ # The maximum file size to be saved in the bucket.
526
+ # @!attribute [rw] file_rotation_interval
527
+ # @return [::Google::Protobuf::Duration]
528
+ # The maximum duration for which new events are added before a file is
529
+ # closed and a new file is created.
530
+ # @!attribute [rw] avro_file_format
531
+ # @return [::Google::Cloud::Datastream::V1alpha1::AvroFileFormat]
532
+ # AVRO file format configuration.
533
+ # @!attribute [rw] json_file_format
534
+ # @return [::Google::Cloud::Datastream::V1alpha1::JsonFileFormat]
535
+ # JSON file format configuration.
536
+ class GcsDestinationConfig
537
+ include ::Google::Protobuf::MessageExts
538
+ extend ::Google::Protobuf::MessageExts::ClassMethods
539
+ end
540
+
541
+ # The configuration of the stream destination.
542
+ # @!attribute [rw] destination_connection_profile_name
543
+ # @return [::String]
544
+ # Required. Destination connection profile identifier.
545
+ # @!attribute [rw] gcs_destination_config
546
+ # @return [::Google::Cloud::Datastream::V1alpha1::GcsDestinationConfig]
547
+ class DestinationConfig
548
+ include ::Google::Protobuf::MessageExts
549
+ extend ::Google::Protobuf::MessageExts::ClassMethods
550
+ end
551
+
552
+ # @!attribute [r] name
553
+ # @return [::String]
554
+ # Output only. The stream's name.
555
+ # @!attribute [r] create_time
556
+ # @return [::Google::Protobuf::Timestamp]
557
+ # Output only. The creation time of the stream.
558
+ # @!attribute [r] update_time
559
+ # @return [::Google::Protobuf::Timestamp]
560
+ # Output only. The last update time of the stream.
561
+ # @!attribute [rw] labels
562
+ # @return [::Google::Protobuf::Map{::String => ::String}]
563
+ # Labels.
564
+ # @!attribute [rw] display_name
565
+ # @return [::String]
566
+ # Required. Display name.
567
+ # @!attribute [rw] source_config
568
+ # @return [::Google::Cloud::Datastream::V1alpha1::SourceConfig]
569
+ # Required. Source connection profile configuration.
570
+ # @!attribute [rw] destination_config
571
+ # @return [::Google::Cloud::Datastream::V1alpha1::DestinationConfig]
572
+ # Required. Destination connection profile configuration.
573
+ # @!attribute [rw] state
574
+ # @return [::Google::Cloud::Datastream::V1alpha1::Stream::State]
575
+ # The state of the stream.
576
+ # @!attribute [rw] backfill_all
577
+ # @return [::Google::Cloud::Datastream::V1alpha1::Stream::BackfillAllStrategy]
578
+ # Automatically backfill objects included in the stream source
579
+ # configuration. Specific objects can be excluded.
580
+ # @!attribute [rw] backfill_none
581
+ # @return [::Google::Cloud::Datastream::V1alpha1::Stream::BackfillNoneStrategy]
582
+ # Do not automatically backfill any objects.
583
+ # @!attribute [r] errors
584
+ # @return [::Array<::Google::Cloud::Datastream::V1alpha1::Error>]
585
+ # Output only. Errors on the Stream.
586
+ class Stream
587
+ include ::Google::Protobuf::MessageExts
588
+ extend ::Google::Protobuf::MessageExts::ClassMethods
589
+
590
+ # Backfill strategy to automatically backfill the Stream's objects.
591
+ # Specific objects can be excluded.
592
+ # @!attribute [rw] oracle_excluded_objects
593
+ # @return [::Google::Cloud::Datastream::V1alpha1::OracleRdbms]
594
+ # Oracle data source objects to avoid backfilling.
595
+ # @!attribute [rw] mysql_excluded_objects
596
+ # @return [::Google::Cloud::Datastream::V1alpha1::MysqlRdbms]
597
+ # MySQL data source objects to avoid backfilling.
598
+ class BackfillAllStrategy
599
+ include ::Google::Protobuf::MessageExts
600
+ extend ::Google::Protobuf::MessageExts::ClassMethods
601
+ end
602
+
603
+ # Backfill strategy to disable automatic backfill for the Stream's objects.
604
+ class BackfillNoneStrategy
605
+ include ::Google::Protobuf::MessageExts
606
+ extend ::Google::Protobuf::MessageExts::ClassMethods
607
+ end
608
+
609
+ # @!attribute [rw] key
610
+ # @return [::String]
611
+ # @!attribute [rw] value
612
+ # @return [::String]
613
+ class LabelsEntry
614
+ include ::Google::Protobuf::MessageExts
615
+ extend ::Google::Protobuf::MessageExts::ClassMethods
616
+ end
617
+
618
+ # Stream state.
619
+ module State
620
+ # Unspecified stream state.
621
+ STATE_UNSPECIFIED = 0
622
+
623
+ # The stream has been created.
624
+ CREATED = 1
625
+
626
+ # The stream is running.
627
+ RUNNING = 2
628
+
629
+ # The stream is paused.
630
+ PAUSED = 3
631
+
632
+ # The stream is in maintenance mode.
633
+ #
634
+ # Updates are rejected on the resource in this state.
635
+ MAINTENANCE = 4
636
+
637
+ # The stream is experiencing an error that is preventing data from being
638
+ # streamed.
639
+ FAILED = 5
640
+
641
+ # The stream has experienced a terminal failure.
642
+ FAILED_PERMANENTLY = 6
643
+
644
+ # The stream is starting, but not yet running.
645
+ STARTING = 7
646
+
647
+ # The Stream is no longer reading new events, but still writing events in
648
+ # the buffer.
649
+ DRAINING = 8
650
+ end
651
+ end
652
+
653
+ # Represent a user-facing Error.
654
+ # @!attribute [rw] reason
655
+ # @return [::String]
656
+ # A title that explains the reason for the error.
657
+ # @!attribute [rw] error_uuid
658
+ # @return [::String]
659
+ # A unique identifier for this specific error,
660
+ # allowing it to be traced throughout the system in logs and API responses.
661
+ # @!attribute [rw] message
662
+ # @return [::String]
663
+ # A message containing more information about the error that occurred.
664
+ # @!attribute [rw] error_time
665
+ # @return [::Google::Protobuf::Timestamp]
666
+ # The time when the error occurred.
667
+ # @!attribute [rw] details
668
+ # @return [::Google::Protobuf::Map{::String => ::String}]
669
+ # Additional information about the error.
670
+ class Error
671
+ include ::Google::Protobuf::MessageExts
672
+ extend ::Google::Protobuf::MessageExts::ClassMethods
673
+
674
+ # @!attribute [rw] key
675
+ # @return [::String]
676
+ # @!attribute [rw] value
677
+ # @return [::String]
678
+ class DetailsEntry
679
+ include ::Google::Protobuf::MessageExts
680
+ extend ::Google::Protobuf::MessageExts::ClassMethods
681
+ end
682
+ end
683
+
684
+ # Contains the current validation results.
685
+ # @!attribute [rw] validations
686
+ # @return [::Array<::Google::Cloud::Datastream::V1alpha1::Validation>]
687
+ # A list of validations (includes both executed as well as not executed
688
+ # validations).
689
+ class ValidationResult
690
+ include ::Google::Protobuf::MessageExts
691
+ extend ::Google::Protobuf::MessageExts::ClassMethods
692
+ end
693
+
694
+ # @!attribute [rw] description
695
+ # @return [::String]
696
+ # A short description of the validation.
697
+ # @!attribute [rw] status
698
+ # @return [::Google::Cloud::Datastream::V1alpha1::Validation::Status]
699
+ # Validation execution status.
700
+ # @!attribute [rw] message
701
+ # @return [::Array<::Google::Cloud::Datastream::V1alpha1::ValidationMessage>]
702
+ # Messages reflecting the validation results.
703
+ # @!attribute [rw] code
704
+ # @return [::String]
705
+ # A custom code identifying this validation.
706
+ class Validation
707
+ include ::Google::Protobuf::MessageExts
708
+ extend ::Google::Protobuf::MessageExts::ClassMethods
709
+
710
+ # Validation execution status.
711
+ module Status
712
+ # Unspecified status.
713
+ STATUS_UNSPECIFIED = 0
714
+
715
+ # Validation did not execute.
716
+ NOT_EXECUTED = 1
717
+
718
+ # Validation failed.
719
+ FAILED = 2
720
+
721
+ # Validation passed.
722
+ PASSED = 3
723
+ end
724
+ end
725
+
726
+ # Represent user-facing validation result message.
727
+ # @!attribute [rw] message
728
+ # @return [::String]
729
+ # The result of the validation.
730
+ # @!attribute [rw] level
731
+ # @return [::Google::Cloud::Datastream::V1alpha1::ValidationMessage::Level]
732
+ # Message severity level (warning or error).
733
+ # @!attribute [rw] metadata
734
+ # @return [::Google::Protobuf::Map{::String => ::String}]
735
+ # Additional metadata related to the result.
736
+ # @!attribute [rw] code
737
+ # @return [::String]
738
+ # A custom code identifying this specific message.
739
+ class ValidationMessage
740
+ include ::Google::Protobuf::MessageExts
741
+ extend ::Google::Protobuf::MessageExts::ClassMethods
742
+
743
+ # @!attribute [rw] key
744
+ # @return [::String]
745
+ # @!attribute [rw] value
746
+ # @return [::String]
747
+ class MetadataEntry
748
+ include ::Google::Protobuf::MessageExts
749
+ extend ::Google::Protobuf::MessageExts::ClassMethods
750
+ end
751
+
752
+ # Validation message level.
753
+ module Level
754
+ # Unspecified level.
755
+ LEVEL_UNSPECIFIED = 0
756
+
757
+ # Potentially cause issues with the Stream.
758
+ WARNING = 1
759
+
760
+ # Definitely cause issues with the Stream.
761
+ ERROR = 2
762
+ end
763
+ end
764
+
765
+ # File format in Cloud Storage.
766
+ module GcsFileFormat
767
+ # Unspecified Cloud Storage file format.
768
+ GCS_FILE_FORMAT_UNSPECIFIED = 0
769
+
770
+ # Avro file format
771
+ AVRO = 1
772
+ end
773
+
774
+ # Schema file format.
775
+ module SchemaFileFormat
776
+ # Unspecified schema file format.
777
+ SCHEMA_FILE_FORMAT_UNSPECIFIED = 0
778
+
779
+ # Do not attach schema file.
780
+ NO_SCHEMA_FILE = 1
781
+
782
+ # Avro schema format.
783
+ AVRO_SCHEMA_FILE = 2
784
+ end
785
+ end
786
+ end
787
+ end
788
+ end