google-cloud-datastream-v1alpha1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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