google-cloud-datastream 1.13.2__py3-none-any.whl
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.
- google/cloud/datastream/__init__.py +219 -0
- google/cloud/datastream/gapic_version.py +16 -0
- google/cloud/datastream/py.typed +2 -0
- google/cloud/datastream_v1/__init__.py +216 -0
- google/cloud/datastream_v1/gapic_metadata.json +418 -0
- google/cloud/datastream_v1/gapic_version.py +16 -0
- google/cloud/datastream_v1/py.typed +2 -0
- google/cloud/datastream_v1/services/__init__.py +15 -0
- google/cloud/datastream_v1/services/datastream/__init__.py +22 -0
- google/cloud/datastream_v1/services/datastream/async_client.py +3939 -0
- google/cloud/datastream_v1/services/datastream/client.py +4420 -0
- google/cloud/datastream_v1/services/datastream/pagers.py +977 -0
- google/cloud/datastream_v1/services/datastream/transports/__init__.py +36 -0
- google/cloud/datastream_v1/services/datastream/transports/base.py +639 -0
- google/cloud/datastream_v1/services/datastream/transports/grpc.py +1193 -0
- google/cloud/datastream_v1/services/datastream/transports/grpc_asyncio.py +1389 -0
- google/cloud/datastream_v1/services/datastream/transports/rest.py +6861 -0
- google/cloud/datastream_v1/services/datastream/transports/rest_base.py +1591 -0
- google/cloud/datastream_v1/types/__init__.py +208 -0
- google/cloud/datastream_v1/types/datastream.py +1491 -0
- google/cloud/datastream_v1/types/datastream_resources.py +2986 -0
- google/cloud/datastream_v1alpha1/__init__.py +156 -0
- google/cloud/datastream_v1alpha1/gapic_metadata.json +343 -0
- google/cloud/datastream_v1alpha1/gapic_version.py +16 -0
- google/cloud/datastream_v1alpha1/py.typed +2 -0
- google/cloud/datastream_v1alpha1/services/__init__.py +15 -0
- google/cloud/datastream_v1alpha1/services/datastream/__init__.py +22 -0
- google/cloud/datastream_v1alpha1/services/datastream/async_client.py +3018 -0
- google/cloud/datastream_v1alpha1/services/datastream/client.py +3458 -0
- google/cloud/datastream_v1alpha1/services/datastream/pagers.py +821 -0
- google/cloud/datastream_v1alpha1/services/datastream/transports/__init__.py +36 -0
- google/cloud/datastream_v1alpha1/services/datastream/transports/base.py +467 -0
- google/cloud/datastream_v1alpha1/services/datastream/transports/grpc.py +942 -0
- google/cloud/datastream_v1alpha1/services/datastream/transports/grpc_asyncio.py +1078 -0
- google/cloud/datastream_v1alpha1/services/datastream/transports/rest.py +4770 -0
- google/cloud/datastream_v1alpha1/services/datastream/transports/rest_base.py +1152 -0
- google/cloud/datastream_v1alpha1/types/__init__.py +148 -0
- google/cloud/datastream_v1alpha1/types/datastream.py +1230 -0
- google/cloud/datastream_v1alpha1/types/datastream_resources.py +1416 -0
- google_cloud_datastream-1.13.2.dist-info/LICENSE +202 -0
- google_cloud_datastream-1.13.2.dist-info/METADATA +229 -0
- google_cloud_datastream-1.13.2.dist-info/RECORD +44 -0
- google_cloud_datastream-1.13.2.dist-info/WHEEL +5 -0
- google_cloud_datastream-1.13.2.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,2986 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2024 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
18
|
+
from typing import MutableMapping, MutableSequence
|
|
19
|
+
|
|
20
|
+
from google.protobuf import duration_pb2 # type: ignore
|
|
21
|
+
from google.protobuf import timestamp_pb2 # type: ignore
|
|
22
|
+
import proto # type: ignore
|
|
23
|
+
|
|
24
|
+
__protobuf__ = proto.module(
|
|
25
|
+
package="google.cloud.datastream.v1",
|
|
26
|
+
manifest={
|
|
27
|
+
"OracleProfile",
|
|
28
|
+
"OracleAsmConfig",
|
|
29
|
+
"MysqlProfile",
|
|
30
|
+
"PostgresqlProfile",
|
|
31
|
+
"SqlServerProfile",
|
|
32
|
+
"GcsProfile",
|
|
33
|
+
"BigQueryProfile",
|
|
34
|
+
"StaticServiceIpConnectivity",
|
|
35
|
+
"ForwardSshTunnelConnectivity",
|
|
36
|
+
"VpcPeeringConfig",
|
|
37
|
+
"PrivateConnection",
|
|
38
|
+
"PrivateConnectivity",
|
|
39
|
+
"Route",
|
|
40
|
+
"MysqlSslConfig",
|
|
41
|
+
"OracleSslConfig",
|
|
42
|
+
"PostgresqlSslConfig",
|
|
43
|
+
"ConnectionProfile",
|
|
44
|
+
"OracleColumn",
|
|
45
|
+
"OracleTable",
|
|
46
|
+
"OracleSchema",
|
|
47
|
+
"OracleRdbms",
|
|
48
|
+
"OracleSourceConfig",
|
|
49
|
+
"PostgresqlColumn",
|
|
50
|
+
"PostgresqlTable",
|
|
51
|
+
"PostgresqlSchema",
|
|
52
|
+
"PostgresqlRdbms",
|
|
53
|
+
"PostgresqlSourceConfig",
|
|
54
|
+
"SqlServerColumn",
|
|
55
|
+
"SqlServerTable",
|
|
56
|
+
"SqlServerSchema",
|
|
57
|
+
"SqlServerRdbms",
|
|
58
|
+
"SqlServerSourceConfig",
|
|
59
|
+
"SqlServerTransactionLogs",
|
|
60
|
+
"SqlServerChangeTables",
|
|
61
|
+
"MysqlColumn",
|
|
62
|
+
"MysqlTable",
|
|
63
|
+
"MysqlDatabase",
|
|
64
|
+
"MysqlRdbms",
|
|
65
|
+
"MysqlSourceConfig",
|
|
66
|
+
"SourceConfig",
|
|
67
|
+
"AvroFileFormat",
|
|
68
|
+
"JsonFileFormat",
|
|
69
|
+
"GcsDestinationConfig",
|
|
70
|
+
"BigQueryDestinationConfig",
|
|
71
|
+
"DestinationConfig",
|
|
72
|
+
"Stream",
|
|
73
|
+
"StreamObject",
|
|
74
|
+
"SourceObjectIdentifier",
|
|
75
|
+
"BackfillJob",
|
|
76
|
+
"Error",
|
|
77
|
+
"ValidationResult",
|
|
78
|
+
"Validation",
|
|
79
|
+
"ValidationMessage",
|
|
80
|
+
"CdcStrategy",
|
|
81
|
+
"SqlServerLsnPosition",
|
|
82
|
+
"OracleScnPosition",
|
|
83
|
+
"MysqlLogPosition",
|
|
84
|
+
},
|
|
85
|
+
)
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
class OracleProfile(proto.Message):
|
|
89
|
+
r"""Oracle database profile.
|
|
90
|
+
Next ID: 10.
|
|
91
|
+
|
|
92
|
+
Attributes:
|
|
93
|
+
hostname (str):
|
|
94
|
+
Required. Hostname for the Oracle connection.
|
|
95
|
+
port (int):
|
|
96
|
+
Port for the Oracle connection, default value
|
|
97
|
+
is 1521.
|
|
98
|
+
username (str):
|
|
99
|
+
Required. Username for the Oracle connection.
|
|
100
|
+
password (str):
|
|
101
|
+
Optional. Password for the Oracle connection. Mutually
|
|
102
|
+
exclusive with the ``secret_manager_stored_password`` field.
|
|
103
|
+
database_service (str):
|
|
104
|
+
Required. Database for the Oracle connection.
|
|
105
|
+
connection_attributes (MutableMapping[str, str]):
|
|
106
|
+
Connection string attributes
|
|
107
|
+
oracle_ssl_config (google.cloud.datastream_v1.types.OracleSslConfig):
|
|
108
|
+
Optional. SSL configuration for the Oracle
|
|
109
|
+
connection.
|
|
110
|
+
oracle_asm_config (google.cloud.datastream_v1.types.OracleAsmConfig):
|
|
111
|
+
Optional. Configuration for Oracle ASM
|
|
112
|
+
connection.
|
|
113
|
+
secret_manager_stored_password (str):
|
|
114
|
+
Optional. A reference to a Secret Manager resource name
|
|
115
|
+
storing the Oracle connection password. Mutually exclusive
|
|
116
|
+
with the ``password`` field.
|
|
117
|
+
"""
|
|
118
|
+
|
|
119
|
+
hostname: str = proto.Field(
|
|
120
|
+
proto.STRING,
|
|
121
|
+
number=1,
|
|
122
|
+
)
|
|
123
|
+
port: int = proto.Field(
|
|
124
|
+
proto.INT32,
|
|
125
|
+
number=2,
|
|
126
|
+
)
|
|
127
|
+
username: str = proto.Field(
|
|
128
|
+
proto.STRING,
|
|
129
|
+
number=3,
|
|
130
|
+
)
|
|
131
|
+
password: str = proto.Field(
|
|
132
|
+
proto.STRING,
|
|
133
|
+
number=4,
|
|
134
|
+
)
|
|
135
|
+
database_service: str = proto.Field(
|
|
136
|
+
proto.STRING,
|
|
137
|
+
number=5,
|
|
138
|
+
)
|
|
139
|
+
connection_attributes: MutableMapping[str, str] = proto.MapField(
|
|
140
|
+
proto.STRING,
|
|
141
|
+
proto.STRING,
|
|
142
|
+
number=6,
|
|
143
|
+
)
|
|
144
|
+
oracle_ssl_config: "OracleSslConfig" = proto.Field(
|
|
145
|
+
proto.MESSAGE,
|
|
146
|
+
number=7,
|
|
147
|
+
message="OracleSslConfig",
|
|
148
|
+
)
|
|
149
|
+
oracle_asm_config: "OracleAsmConfig" = proto.Field(
|
|
150
|
+
proto.MESSAGE,
|
|
151
|
+
number=8,
|
|
152
|
+
message="OracleAsmConfig",
|
|
153
|
+
)
|
|
154
|
+
secret_manager_stored_password: str = proto.Field(
|
|
155
|
+
proto.STRING,
|
|
156
|
+
number=9,
|
|
157
|
+
)
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
class OracleAsmConfig(proto.Message):
|
|
161
|
+
r"""Configuration for Oracle Automatic Storage Management (ASM)
|
|
162
|
+
connection. .
|
|
163
|
+
|
|
164
|
+
Attributes:
|
|
165
|
+
hostname (str):
|
|
166
|
+
Required. Hostname for the Oracle ASM
|
|
167
|
+
connection.
|
|
168
|
+
port (int):
|
|
169
|
+
Required. Port for the Oracle ASM connection.
|
|
170
|
+
username (str):
|
|
171
|
+
Required. Username for the Oracle ASM
|
|
172
|
+
connection.
|
|
173
|
+
password (str):
|
|
174
|
+
Optional. Password for the Oracle ASM
|
|
175
|
+
connection.
|
|
176
|
+
asm_service (str):
|
|
177
|
+
Required. ASM service name for the Oracle ASM
|
|
178
|
+
connection.
|
|
179
|
+
connection_attributes (MutableMapping[str, str]):
|
|
180
|
+
Optional. Connection string attributes
|
|
181
|
+
oracle_ssl_config (google.cloud.datastream_v1.types.OracleSslConfig):
|
|
182
|
+
Optional. SSL configuration for the Oracle
|
|
183
|
+
connection.
|
|
184
|
+
"""
|
|
185
|
+
|
|
186
|
+
hostname: str = proto.Field(
|
|
187
|
+
proto.STRING,
|
|
188
|
+
number=1,
|
|
189
|
+
)
|
|
190
|
+
port: int = proto.Field(
|
|
191
|
+
proto.INT32,
|
|
192
|
+
number=2,
|
|
193
|
+
)
|
|
194
|
+
username: str = proto.Field(
|
|
195
|
+
proto.STRING,
|
|
196
|
+
number=3,
|
|
197
|
+
)
|
|
198
|
+
password: str = proto.Field(
|
|
199
|
+
proto.STRING,
|
|
200
|
+
number=4,
|
|
201
|
+
)
|
|
202
|
+
asm_service: str = proto.Field(
|
|
203
|
+
proto.STRING,
|
|
204
|
+
number=5,
|
|
205
|
+
)
|
|
206
|
+
connection_attributes: MutableMapping[str, str] = proto.MapField(
|
|
207
|
+
proto.STRING,
|
|
208
|
+
proto.STRING,
|
|
209
|
+
number=6,
|
|
210
|
+
)
|
|
211
|
+
oracle_ssl_config: "OracleSslConfig" = proto.Field(
|
|
212
|
+
proto.MESSAGE,
|
|
213
|
+
number=7,
|
|
214
|
+
message="OracleSslConfig",
|
|
215
|
+
)
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
class MysqlProfile(proto.Message):
|
|
219
|
+
r"""MySQL database profile.
|
|
220
|
+
Next ID: 7.
|
|
221
|
+
|
|
222
|
+
Attributes:
|
|
223
|
+
hostname (str):
|
|
224
|
+
Required. Hostname for the MySQL connection.
|
|
225
|
+
port (int):
|
|
226
|
+
Port for the MySQL connection, default value
|
|
227
|
+
is 3306.
|
|
228
|
+
username (str):
|
|
229
|
+
Required. Username for the MySQL connection.
|
|
230
|
+
password (str):
|
|
231
|
+
Optional. Input only. Password for the MySQL connection.
|
|
232
|
+
Mutually exclusive with the
|
|
233
|
+
``secret_manager_stored_password`` field.
|
|
234
|
+
ssl_config (google.cloud.datastream_v1.types.MysqlSslConfig):
|
|
235
|
+
SSL configuration for the MySQL connection.
|
|
236
|
+
"""
|
|
237
|
+
|
|
238
|
+
hostname: str = proto.Field(
|
|
239
|
+
proto.STRING,
|
|
240
|
+
number=1,
|
|
241
|
+
)
|
|
242
|
+
port: int = proto.Field(
|
|
243
|
+
proto.INT32,
|
|
244
|
+
number=2,
|
|
245
|
+
)
|
|
246
|
+
username: str = proto.Field(
|
|
247
|
+
proto.STRING,
|
|
248
|
+
number=3,
|
|
249
|
+
)
|
|
250
|
+
password: str = proto.Field(
|
|
251
|
+
proto.STRING,
|
|
252
|
+
number=4,
|
|
253
|
+
)
|
|
254
|
+
ssl_config: "MysqlSslConfig" = proto.Field(
|
|
255
|
+
proto.MESSAGE,
|
|
256
|
+
number=5,
|
|
257
|
+
message="MysqlSslConfig",
|
|
258
|
+
)
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
class PostgresqlProfile(proto.Message):
|
|
262
|
+
r"""PostgreSQL database profile.
|
|
263
|
+
|
|
264
|
+
Attributes:
|
|
265
|
+
hostname (str):
|
|
266
|
+
Required. Hostname for the PostgreSQL
|
|
267
|
+
connection.
|
|
268
|
+
port (int):
|
|
269
|
+
Port for the PostgreSQL connection, default
|
|
270
|
+
value is 5432.
|
|
271
|
+
username (str):
|
|
272
|
+
Required. Username for the PostgreSQL
|
|
273
|
+
connection.
|
|
274
|
+
password (str):
|
|
275
|
+
Optional. Password for the PostgreSQL connection. Mutually
|
|
276
|
+
exclusive with the ``secret_manager_stored_password`` field.
|
|
277
|
+
database (str):
|
|
278
|
+
Required. Database for the PostgreSQL
|
|
279
|
+
connection.
|
|
280
|
+
ssl_config (google.cloud.datastream_v1.types.PostgresqlSslConfig):
|
|
281
|
+
Optional. SSL configuration for the PostgreSQL connection.
|
|
282
|
+
In case PostgresqlSslConfig is not set, the connection will
|
|
283
|
+
use the default SSL mode, which is ``prefer`` (i.e. this
|
|
284
|
+
mode will only use encryption if enabled from database side,
|
|
285
|
+
otherwise will use unencrypted communication)
|
|
286
|
+
"""
|
|
287
|
+
|
|
288
|
+
hostname: str = proto.Field(
|
|
289
|
+
proto.STRING,
|
|
290
|
+
number=1,
|
|
291
|
+
)
|
|
292
|
+
port: int = proto.Field(
|
|
293
|
+
proto.INT32,
|
|
294
|
+
number=2,
|
|
295
|
+
)
|
|
296
|
+
username: str = proto.Field(
|
|
297
|
+
proto.STRING,
|
|
298
|
+
number=3,
|
|
299
|
+
)
|
|
300
|
+
password: str = proto.Field(
|
|
301
|
+
proto.STRING,
|
|
302
|
+
number=4,
|
|
303
|
+
)
|
|
304
|
+
database: str = proto.Field(
|
|
305
|
+
proto.STRING,
|
|
306
|
+
number=5,
|
|
307
|
+
)
|
|
308
|
+
ssl_config: "PostgresqlSslConfig" = proto.Field(
|
|
309
|
+
proto.MESSAGE,
|
|
310
|
+
number=7,
|
|
311
|
+
message="PostgresqlSslConfig",
|
|
312
|
+
)
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
class SqlServerProfile(proto.Message):
|
|
316
|
+
r"""SQLServer database profile.
|
|
317
|
+
Next ID: 8.
|
|
318
|
+
|
|
319
|
+
Attributes:
|
|
320
|
+
hostname (str):
|
|
321
|
+
Required. Hostname for the SQLServer
|
|
322
|
+
connection.
|
|
323
|
+
port (int):
|
|
324
|
+
Port for the SQLServer connection, default
|
|
325
|
+
value is 1433.
|
|
326
|
+
username (str):
|
|
327
|
+
Required. Username for the SQLServer
|
|
328
|
+
connection.
|
|
329
|
+
password (str):
|
|
330
|
+
Optional. Password for the SQLServer connection. Mutually
|
|
331
|
+
exclusive with the ``secret_manager_stored_password`` field.
|
|
332
|
+
database (str):
|
|
333
|
+
Required. Database for the SQLServer
|
|
334
|
+
connection.
|
|
335
|
+
"""
|
|
336
|
+
|
|
337
|
+
hostname: str = proto.Field(
|
|
338
|
+
proto.STRING,
|
|
339
|
+
number=1,
|
|
340
|
+
)
|
|
341
|
+
port: int = proto.Field(
|
|
342
|
+
proto.INT32,
|
|
343
|
+
number=2,
|
|
344
|
+
)
|
|
345
|
+
username: str = proto.Field(
|
|
346
|
+
proto.STRING,
|
|
347
|
+
number=3,
|
|
348
|
+
)
|
|
349
|
+
password: str = proto.Field(
|
|
350
|
+
proto.STRING,
|
|
351
|
+
number=4,
|
|
352
|
+
)
|
|
353
|
+
database: str = proto.Field(
|
|
354
|
+
proto.STRING,
|
|
355
|
+
number=5,
|
|
356
|
+
)
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
class GcsProfile(proto.Message):
|
|
360
|
+
r"""Cloud Storage bucket profile.
|
|
361
|
+
|
|
362
|
+
Attributes:
|
|
363
|
+
bucket (str):
|
|
364
|
+
Required. The Cloud Storage bucket name.
|
|
365
|
+
root_path (str):
|
|
366
|
+
The root path inside the Cloud Storage
|
|
367
|
+
bucket.
|
|
368
|
+
"""
|
|
369
|
+
|
|
370
|
+
bucket: str = proto.Field(
|
|
371
|
+
proto.STRING,
|
|
372
|
+
number=1,
|
|
373
|
+
)
|
|
374
|
+
root_path: str = proto.Field(
|
|
375
|
+
proto.STRING,
|
|
376
|
+
number=2,
|
|
377
|
+
)
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
class BigQueryProfile(proto.Message):
|
|
381
|
+
r"""BigQuery warehouse profile."""
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
class StaticServiceIpConnectivity(proto.Message):
|
|
385
|
+
r"""Static IP address connectivity. Used when the source database
|
|
386
|
+
is configured to allow incoming connections from the Datastream
|
|
387
|
+
public IP addresses for the region specified in the connection
|
|
388
|
+
profile.
|
|
389
|
+
|
|
390
|
+
"""
|
|
391
|
+
|
|
392
|
+
|
|
393
|
+
class ForwardSshTunnelConnectivity(proto.Message):
|
|
394
|
+
r"""Forward SSH Tunnel connectivity.
|
|
395
|
+
|
|
396
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
397
|
+
For each oneof, at most one member field can be set at the same time.
|
|
398
|
+
Setting any member of the oneof automatically clears all other
|
|
399
|
+
members.
|
|
400
|
+
|
|
401
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
402
|
+
|
|
403
|
+
Attributes:
|
|
404
|
+
hostname (str):
|
|
405
|
+
Required. Hostname for the SSH tunnel.
|
|
406
|
+
username (str):
|
|
407
|
+
Required. Username for the SSH tunnel.
|
|
408
|
+
port (int):
|
|
409
|
+
Port for the SSH tunnel, default value is 22.
|
|
410
|
+
password (str):
|
|
411
|
+
Input only. SSH password.
|
|
412
|
+
|
|
413
|
+
This field is a member of `oneof`_ ``authentication_method``.
|
|
414
|
+
private_key (str):
|
|
415
|
+
Input only. SSH private key.
|
|
416
|
+
|
|
417
|
+
This field is a member of `oneof`_ ``authentication_method``.
|
|
418
|
+
"""
|
|
419
|
+
|
|
420
|
+
hostname: str = proto.Field(
|
|
421
|
+
proto.STRING,
|
|
422
|
+
number=1,
|
|
423
|
+
)
|
|
424
|
+
username: str = proto.Field(
|
|
425
|
+
proto.STRING,
|
|
426
|
+
number=2,
|
|
427
|
+
)
|
|
428
|
+
port: int = proto.Field(
|
|
429
|
+
proto.INT32,
|
|
430
|
+
number=3,
|
|
431
|
+
)
|
|
432
|
+
password: str = proto.Field(
|
|
433
|
+
proto.STRING,
|
|
434
|
+
number=100,
|
|
435
|
+
oneof="authentication_method",
|
|
436
|
+
)
|
|
437
|
+
private_key: str = proto.Field(
|
|
438
|
+
proto.STRING,
|
|
439
|
+
number=101,
|
|
440
|
+
oneof="authentication_method",
|
|
441
|
+
)
|
|
442
|
+
|
|
443
|
+
|
|
444
|
+
class VpcPeeringConfig(proto.Message):
|
|
445
|
+
r"""The VPC Peering configuration is used to create VPC peering
|
|
446
|
+
between Datastream and the consumer's VPC.
|
|
447
|
+
|
|
448
|
+
Attributes:
|
|
449
|
+
vpc (str):
|
|
450
|
+
Required. Fully qualified name of the VPC that Datastream
|
|
451
|
+
will peer to. Format:
|
|
452
|
+
``projects/{project}/global/{networks}/{name}``
|
|
453
|
+
subnet (str):
|
|
454
|
+
Required. A free subnet for peering. (CIDR of
|
|
455
|
+
/29)
|
|
456
|
+
"""
|
|
457
|
+
|
|
458
|
+
vpc: str = proto.Field(
|
|
459
|
+
proto.STRING,
|
|
460
|
+
number=1,
|
|
461
|
+
)
|
|
462
|
+
subnet: str = proto.Field(
|
|
463
|
+
proto.STRING,
|
|
464
|
+
number=2,
|
|
465
|
+
)
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
class PrivateConnection(proto.Message):
|
|
469
|
+
r"""The PrivateConnection resource is used to establish private
|
|
470
|
+
connectivity between Datastream and a customer's network.
|
|
471
|
+
|
|
472
|
+
Attributes:
|
|
473
|
+
name (str):
|
|
474
|
+
Output only. Identifier. The resource's name.
|
|
475
|
+
create_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
476
|
+
Output only. The create time of the resource.
|
|
477
|
+
update_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
478
|
+
Output only. The update time of the resource.
|
|
479
|
+
labels (MutableMapping[str, str]):
|
|
480
|
+
Labels.
|
|
481
|
+
display_name (str):
|
|
482
|
+
Required. Display name.
|
|
483
|
+
state (google.cloud.datastream_v1.types.PrivateConnection.State):
|
|
484
|
+
Output only. The state of the Private
|
|
485
|
+
Connection.
|
|
486
|
+
error (google.cloud.datastream_v1.types.Error):
|
|
487
|
+
Output only. In case of error, the details of
|
|
488
|
+
the error in a user-friendly format.
|
|
489
|
+
vpc_peering_config (google.cloud.datastream_v1.types.VpcPeeringConfig):
|
|
490
|
+
VPC Peering Config.
|
|
491
|
+
"""
|
|
492
|
+
|
|
493
|
+
class State(proto.Enum):
|
|
494
|
+
r"""Private Connection state.
|
|
495
|
+
|
|
496
|
+
Values:
|
|
497
|
+
STATE_UNSPECIFIED (0):
|
|
498
|
+
Unspecified state.
|
|
499
|
+
CREATING (1):
|
|
500
|
+
The private connection is in creation state -
|
|
501
|
+
creating resources.
|
|
502
|
+
CREATED (2):
|
|
503
|
+
The private connection has been created with
|
|
504
|
+
all of its resources.
|
|
505
|
+
FAILED (3):
|
|
506
|
+
The private connection creation has failed.
|
|
507
|
+
DELETING (4):
|
|
508
|
+
The private connection is being deleted.
|
|
509
|
+
FAILED_TO_DELETE (5):
|
|
510
|
+
Delete request has failed, resource is in
|
|
511
|
+
invalid state.
|
|
512
|
+
"""
|
|
513
|
+
STATE_UNSPECIFIED = 0
|
|
514
|
+
CREATING = 1
|
|
515
|
+
CREATED = 2
|
|
516
|
+
FAILED = 3
|
|
517
|
+
DELETING = 4
|
|
518
|
+
FAILED_TO_DELETE = 5
|
|
519
|
+
|
|
520
|
+
name: str = proto.Field(
|
|
521
|
+
proto.STRING,
|
|
522
|
+
number=1,
|
|
523
|
+
)
|
|
524
|
+
create_time: timestamp_pb2.Timestamp = proto.Field(
|
|
525
|
+
proto.MESSAGE,
|
|
526
|
+
number=2,
|
|
527
|
+
message=timestamp_pb2.Timestamp,
|
|
528
|
+
)
|
|
529
|
+
update_time: timestamp_pb2.Timestamp = proto.Field(
|
|
530
|
+
proto.MESSAGE,
|
|
531
|
+
number=3,
|
|
532
|
+
message=timestamp_pb2.Timestamp,
|
|
533
|
+
)
|
|
534
|
+
labels: MutableMapping[str, str] = proto.MapField(
|
|
535
|
+
proto.STRING,
|
|
536
|
+
proto.STRING,
|
|
537
|
+
number=4,
|
|
538
|
+
)
|
|
539
|
+
display_name: str = proto.Field(
|
|
540
|
+
proto.STRING,
|
|
541
|
+
number=5,
|
|
542
|
+
)
|
|
543
|
+
state: State = proto.Field(
|
|
544
|
+
proto.ENUM,
|
|
545
|
+
number=6,
|
|
546
|
+
enum=State,
|
|
547
|
+
)
|
|
548
|
+
error: "Error" = proto.Field(
|
|
549
|
+
proto.MESSAGE,
|
|
550
|
+
number=7,
|
|
551
|
+
message="Error",
|
|
552
|
+
)
|
|
553
|
+
vpc_peering_config: "VpcPeeringConfig" = proto.Field(
|
|
554
|
+
proto.MESSAGE,
|
|
555
|
+
number=100,
|
|
556
|
+
message="VpcPeeringConfig",
|
|
557
|
+
)
|
|
558
|
+
|
|
559
|
+
|
|
560
|
+
class PrivateConnectivity(proto.Message):
|
|
561
|
+
r"""Private Connectivity
|
|
562
|
+
|
|
563
|
+
Attributes:
|
|
564
|
+
private_connection (str):
|
|
565
|
+
Required. A reference to a private connection resource.
|
|
566
|
+
Format:
|
|
567
|
+
``projects/{project}/locations/{location}/privateConnections/{name}``
|
|
568
|
+
"""
|
|
569
|
+
|
|
570
|
+
private_connection: str = proto.Field(
|
|
571
|
+
proto.STRING,
|
|
572
|
+
number=1,
|
|
573
|
+
)
|
|
574
|
+
|
|
575
|
+
|
|
576
|
+
class Route(proto.Message):
|
|
577
|
+
r"""The route resource is the child of the private connection
|
|
578
|
+
resource, used for defining a route for a private connection.
|
|
579
|
+
|
|
580
|
+
Attributes:
|
|
581
|
+
name (str):
|
|
582
|
+
Output only. Identifier. The resource's name.
|
|
583
|
+
create_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
584
|
+
Output only. The create time of the resource.
|
|
585
|
+
update_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
586
|
+
Output only. The update time of the resource.
|
|
587
|
+
labels (MutableMapping[str, str]):
|
|
588
|
+
Labels.
|
|
589
|
+
display_name (str):
|
|
590
|
+
Required. Display name.
|
|
591
|
+
destination_address (str):
|
|
592
|
+
Required. Destination address for connection
|
|
593
|
+
destination_port (int):
|
|
594
|
+
Destination port for connection
|
|
595
|
+
"""
|
|
596
|
+
|
|
597
|
+
name: str = proto.Field(
|
|
598
|
+
proto.STRING,
|
|
599
|
+
number=1,
|
|
600
|
+
)
|
|
601
|
+
create_time: timestamp_pb2.Timestamp = proto.Field(
|
|
602
|
+
proto.MESSAGE,
|
|
603
|
+
number=2,
|
|
604
|
+
message=timestamp_pb2.Timestamp,
|
|
605
|
+
)
|
|
606
|
+
update_time: timestamp_pb2.Timestamp = proto.Field(
|
|
607
|
+
proto.MESSAGE,
|
|
608
|
+
number=3,
|
|
609
|
+
message=timestamp_pb2.Timestamp,
|
|
610
|
+
)
|
|
611
|
+
labels: MutableMapping[str, str] = proto.MapField(
|
|
612
|
+
proto.STRING,
|
|
613
|
+
proto.STRING,
|
|
614
|
+
number=4,
|
|
615
|
+
)
|
|
616
|
+
display_name: str = proto.Field(
|
|
617
|
+
proto.STRING,
|
|
618
|
+
number=5,
|
|
619
|
+
)
|
|
620
|
+
destination_address: str = proto.Field(
|
|
621
|
+
proto.STRING,
|
|
622
|
+
number=6,
|
|
623
|
+
)
|
|
624
|
+
destination_port: int = proto.Field(
|
|
625
|
+
proto.INT32,
|
|
626
|
+
number=7,
|
|
627
|
+
)
|
|
628
|
+
|
|
629
|
+
|
|
630
|
+
class MysqlSslConfig(proto.Message):
|
|
631
|
+
r"""MySQL SSL configuration information.
|
|
632
|
+
|
|
633
|
+
Attributes:
|
|
634
|
+
client_key (str):
|
|
635
|
+
Input only. PEM-encoded private key associated with the
|
|
636
|
+
Client Certificate. If this field is used then the
|
|
637
|
+
'client_certificate' and the 'ca_certificate' fields are
|
|
638
|
+
mandatory.
|
|
639
|
+
client_key_set (bool):
|
|
640
|
+
Output only. Indicates whether the client_key field is set.
|
|
641
|
+
client_certificate (str):
|
|
642
|
+
Input only. PEM-encoded certificate that will be used by the
|
|
643
|
+
replica to authenticate against the source database server.
|
|
644
|
+
If this field is used then the 'client_key' and the
|
|
645
|
+
'ca_certificate' fields are mandatory.
|
|
646
|
+
client_certificate_set (bool):
|
|
647
|
+
Output only. Indicates whether the client_certificate field
|
|
648
|
+
is set.
|
|
649
|
+
ca_certificate (str):
|
|
650
|
+
Input only. PEM-encoded certificate of the CA
|
|
651
|
+
that signed the source database server's
|
|
652
|
+
certificate.
|
|
653
|
+
ca_certificate_set (bool):
|
|
654
|
+
Output only. Indicates whether the ca_certificate field is
|
|
655
|
+
set.
|
|
656
|
+
"""
|
|
657
|
+
|
|
658
|
+
client_key: str = proto.Field(
|
|
659
|
+
proto.STRING,
|
|
660
|
+
number=1,
|
|
661
|
+
)
|
|
662
|
+
client_key_set: bool = proto.Field(
|
|
663
|
+
proto.BOOL,
|
|
664
|
+
number=2,
|
|
665
|
+
)
|
|
666
|
+
client_certificate: str = proto.Field(
|
|
667
|
+
proto.STRING,
|
|
668
|
+
number=3,
|
|
669
|
+
)
|
|
670
|
+
client_certificate_set: bool = proto.Field(
|
|
671
|
+
proto.BOOL,
|
|
672
|
+
number=4,
|
|
673
|
+
)
|
|
674
|
+
ca_certificate: str = proto.Field(
|
|
675
|
+
proto.STRING,
|
|
676
|
+
number=5,
|
|
677
|
+
)
|
|
678
|
+
ca_certificate_set: bool = proto.Field(
|
|
679
|
+
proto.BOOL,
|
|
680
|
+
number=6,
|
|
681
|
+
)
|
|
682
|
+
|
|
683
|
+
|
|
684
|
+
class OracleSslConfig(proto.Message):
|
|
685
|
+
r"""Oracle SSL configuration information.
|
|
686
|
+
|
|
687
|
+
Attributes:
|
|
688
|
+
ca_certificate (str):
|
|
689
|
+
Input only. PEM-encoded certificate of the CA
|
|
690
|
+
that signed the source database server's
|
|
691
|
+
certificate.
|
|
692
|
+
ca_certificate_set (bool):
|
|
693
|
+
Output only. Indicates whether the ca_certificate field has
|
|
694
|
+
been set for this Connection-Profile.
|
|
695
|
+
"""
|
|
696
|
+
|
|
697
|
+
ca_certificate: str = proto.Field(
|
|
698
|
+
proto.STRING,
|
|
699
|
+
number=1,
|
|
700
|
+
)
|
|
701
|
+
ca_certificate_set: bool = proto.Field(
|
|
702
|
+
proto.BOOL,
|
|
703
|
+
number=2,
|
|
704
|
+
)
|
|
705
|
+
|
|
706
|
+
|
|
707
|
+
class PostgresqlSslConfig(proto.Message):
|
|
708
|
+
r"""PostgreSQL SSL configuration information.
|
|
709
|
+
|
|
710
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
711
|
+
For each oneof, at most one member field can be set at the same time.
|
|
712
|
+
Setting any member of the oneof automatically clears all other
|
|
713
|
+
members.
|
|
714
|
+
|
|
715
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
716
|
+
|
|
717
|
+
Attributes:
|
|
718
|
+
server_verification (google.cloud.datastream_v1.types.PostgresqlSslConfig.ServerVerification):
|
|
719
|
+
If this field is set, the communication will
|
|
720
|
+
be encrypted with TLS encryption and the server
|
|
721
|
+
identity will be authenticated.
|
|
722
|
+
|
|
723
|
+
This field is a member of `oneof`_ ``encryption_setting``.
|
|
724
|
+
server_and_client_verification (google.cloud.datastream_v1.types.PostgresqlSslConfig.ServerAndClientVerification):
|
|
725
|
+
If this field is set, the communication will
|
|
726
|
+
be encrypted with TLS encryption and both the
|
|
727
|
+
server identity and the client identity will be
|
|
728
|
+
authenticated.
|
|
729
|
+
|
|
730
|
+
This field is a member of `oneof`_ ``encryption_setting``.
|
|
731
|
+
"""
|
|
732
|
+
|
|
733
|
+
class ServerVerification(proto.Message):
|
|
734
|
+
r"""Message represents the option where Datastream will enforce the
|
|
735
|
+
encryption and authenticate the server identity. ca_certificate must
|
|
736
|
+
be set if user selects this option.
|
|
737
|
+
|
|
738
|
+
Attributes:
|
|
739
|
+
ca_certificate (str):
|
|
740
|
+
Required. Input only. PEM-encoded server root
|
|
741
|
+
CA certificate.
|
|
742
|
+
"""
|
|
743
|
+
|
|
744
|
+
ca_certificate: str = proto.Field(
|
|
745
|
+
proto.STRING,
|
|
746
|
+
number=1,
|
|
747
|
+
)
|
|
748
|
+
|
|
749
|
+
class ServerAndClientVerification(proto.Message):
|
|
750
|
+
r"""Message represents the option where Datastream will enforce the
|
|
751
|
+
encryption and authenticate the server identity as well as the
|
|
752
|
+
client identity. ca_certificate, client_certificate and client_key
|
|
753
|
+
must be set if user selects this option.
|
|
754
|
+
|
|
755
|
+
Attributes:
|
|
756
|
+
client_certificate (str):
|
|
757
|
+
Required. Input only. PEM-encoded certificate
|
|
758
|
+
used by the source database to authenticate the
|
|
759
|
+
client identity (i.e., the Datastream's
|
|
760
|
+
identity). This certificate is signed by either
|
|
761
|
+
a root certificate trusted by the server or one
|
|
762
|
+
or more intermediate certificates (which is
|
|
763
|
+
stored with the leaf certificate) to link the
|
|
764
|
+
this certificate to the trusted root
|
|
765
|
+
certificate.
|
|
766
|
+
client_key (str):
|
|
767
|
+
Required. Input only. PEM-encoded private key
|
|
768
|
+
associated with the client certificate. This
|
|
769
|
+
value will be used during the SSL/TLS handshake,
|
|
770
|
+
allowing the PostgreSQL server to authenticate
|
|
771
|
+
the client's identity, i.e. identity of the
|
|
772
|
+
Datastream.
|
|
773
|
+
ca_certificate (str):
|
|
774
|
+
Required. Input only. PEM-encoded server root
|
|
775
|
+
CA certificate.
|
|
776
|
+
"""
|
|
777
|
+
|
|
778
|
+
client_certificate: str = proto.Field(
|
|
779
|
+
proto.STRING,
|
|
780
|
+
number=1,
|
|
781
|
+
)
|
|
782
|
+
client_key: str = proto.Field(
|
|
783
|
+
proto.STRING,
|
|
784
|
+
number=2,
|
|
785
|
+
)
|
|
786
|
+
ca_certificate: str = proto.Field(
|
|
787
|
+
proto.STRING,
|
|
788
|
+
number=3,
|
|
789
|
+
)
|
|
790
|
+
|
|
791
|
+
server_verification: ServerVerification = proto.Field(
|
|
792
|
+
proto.MESSAGE,
|
|
793
|
+
number=1,
|
|
794
|
+
oneof="encryption_setting",
|
|
795
|
+
message=ServerVerification,
|
|
796
|
+
)
|
|
797
|
+
server_and_client_verification: ServerAndClientVerification = proto.Field(
|
|
798
|
+
proto.MESSAGE,
|
|
799
|
+
number=2,
|
|
800
|
+
oneof="encryption_setting",
|
|
801
|
+
message=ServerAndClientVerification,
|
|
802
|
+
)
|
|
803
|
+
|
|
804
|
+
|
|
805
|
+
class ConnectionProfile(proto.Message):
|
|
806
|
+
r"""A set of reusable connection configurations to be used as a
|
|
807
|
+
source or destination for a stream.
|
|
808
|
+
|
|
809
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
810
|
+
For each oneof, at most one member field can be set at the same time.
|
|
811
|
+
Setting any member of the oneof automatically clears all other
|
|
812
|
+
members.
|
|
813
|
+
|
|
814
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
815
|
+
|
|
816
|
+
Attributes:
|
|
817
|
+
name (str):
|
|
818
|
+
Output only. Identifier. The resource's name.
|
|
819
|
+
create_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
820
|
+
Output only. The create time of the resource.
|
|
821
|
+
update_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
822
|
+
Output only. The update time of the resource.
|
|
823
|
+
labels (MutableMapping[str, str]):
|
|
824
|
+
Labels.
|
|
825
|
+
display_name (str):
|
|
826
|
+
Required. Display name.
|
|
827
|
+
oracle_profile (google.cloud.datastream_v1.types.OracleProfile):
|
|
828
|
+
Oracle ConnectionProfile configuration.
|
|
829
|
+
|
|
830
|
+
This field is a member of `oneof`_ ``profile``.
|
|
831
|
+
gcs_profile (google.cloud.datastream_v1.types.GcsProfile):
|
|
832
|
+
Cloud Storage ConnectionProfile
|
|
833
|
+
configuration.
|
|
834
|
+
|
|
835
|
+
This field is a member of `oneof`_ ``profile``.
|
|
836
|
+
mysql_profile (google.cloud.datastream_v1.types.MysqlProfile):
|
|
837
|
+
MySQL ConnectionProfile configuration.
|
|
838
|
+
|
|
839
|
+
This field is a member of `oneof`_ ``profile``.
|
|
840
|
+
bigquery_profile (google.cloud.datastream_v1.types.BigQueryProfile):
|
|
841
|
+
BigQuery Connection Profile configuration.
|
|
842
|
+
|
|
843
|
+
This field is a member of `oneof`_ ``profile``.
|
|
844
|
+
postgresql_profile (google.cloud.datastream_v1.types.PostgresqlProfile):
|
|
845
|
+
PostgreSQL Connection Profile configuration.
|
|
846
|
+
|
|
847
|
+
This field is a member of `oneof`_ ``profile``.
|
|
848
|
+
sql_server_profile (google.cloud.datastream_v1.types.SqlServerProfile):
|
|
849
|
+
SQLServer Connection Profile configuration.
|
|
850
|
+
|
|
851
|
+
This field is a member of `oneof`_ ``profile``.
|
|
852
|
+
static_service_ip_connectivity (google.cloud.datastream_v1.types.StaticServiceIpConnectivity):
|
|
853
|
+
Static Service IP connectivity.
|
|
854
|
+
|
|
855
|
+
This field is a member of `oneof`_ ``connectivity``.
|
|
856
|
+
forward_ssh_connectivity (google.cloud.datastream_v1.types.ForwardSshTunnelConnectivity):
|
|
857
|
+
Forward SSH tunnel connectivity.
|
|
858
|
+
|
|
859
|
+
This field is a member of `oneof`_ ``connectivity``.
|
|
860
|
+
private_connectivity (google.cloud.datastream_v1.types.PrivateConnectivity):
|
|
861
|
+
Private connectivity.
|
|
862
|
+
|
|
863
|
+
This field is a member of `oneof`_ ``connectivity``.
|
|
864
|
+
"""
|
|
865
|
+
|
|
866
|
+
name: str = proto.Field(
|
|
867
|
+
proto.STRING,
|
|
868
|
+
number=1,
|
|
869
|
+
)
|
|
870
|
+
create_time: timestamp_pb2.Timestamp = proto.Field(
|
|
871
|
+
proto.MESSAGE,
|
|
872
|
+
number=2,
|
|
873
|
+
message=timestamp_pb2.Timestamp,
|
|
874
|
+
)
|
|
875
|
+
update_time: timestamp_pb2.Timestamp = proto.Field(
|
|
876
|
+
proto.MESSAGE,
|
|
877
|
+
number=3,
|
|
878
|
+
message=timestamp_pb2.Timestamp,
|
|
879
|
+
)
|
|
880
|
+
labels: MutableMapping[str, str] = proto.MapField(
|
|
881
|
+
proto.STRING,
|
|
882
|
+
proto.STRING,
|
|
883
|
+
number=4,
|
|
884
|
+
)
|
|
885
|
+
display_name: str = proto.Field(
|
|
886
|
+
proto.STRING,
|
|
887
|
+
number=5,
|
|
888
|
+
)
|
|
889
|
+
oracle_profile: "OracleProfile" = proto.Field(
|
|
890
|
+
proto.MESSAGE,
|
|
891
|
+
number=100,
|
|
892
|
+
oneof="profile",
|
|
893
|
+
message="OracleProfile",
|
|
894
|
+
)
|
|
895
|
+
gcs_profile: "GcsProfile" = proto.Field(
|
|
896
|
+
proto.MESSAGE,
|
|
897
|
+
number=101,
|
|
898
|
+
oneof="profile",
|
|
899
|
+
message="GcsProfile",
|
|
900
|
+
)
|
|
901
|
+
mysql_profile: "MysqlProfile" = proto.Field(
|
|
902
|
+
proto.MESSAGE,
|
|
903
|
+
number=102,
|
|
904
|
+
oneof="profile",
|
|
905
|
+
message="MysqlProfile",
|
|
906
|
+
)
|
|
907
|
+
bigquery_profile: "BigQueryProfile" = proto.Field(
|
|
908
|
+
proto.MESSAGE,
|
|
909
|
+
number=103,
|
|
910
|
+
oneof="profile",
|
|
911
|
+
message="BigQueryProfile",
|
|
912
|
+
)
|
|
913
|
+
postgresql_profile: "PostgresqlProfile" = proto.Field(
|
|
914
|
+
proto.MESSAGE,
|
|
915
|
+
number=104,
|
|
916
|
+
oneof="profile",
|
|
917
|
+
message="PostgresqlProfile",
|
|
918
|
+
)
|
|
919
|
+
sql_server_profile: "SqlServerProfile" = proto.Field(
|
|
920
|
+
proto.MESSAGE,
|
|
921
|
+
number=105,
|
|
922
|
+
oneof="profile",
|
|
923
|
+
message="SqlServerProfile",
|
|
924
|
+
)
|
|
925
|
+
static_service_ip_connectivity: "StaticServiceIpConnectivity" = proto.Field(
|
|
926
|
+
proto.MESSAGE,
|
|
927
|
+
number=200,
|
|
928
|
+
oneof="connectivity",
|
|
929
|
+
message="StaticServiceIpConnectivity",
|
|
930
|
+
)
|
|
931
|
+
forward_ssh_connectivity: "ForwardSshTunnelConnectivity" = proto.Field(
|
|
932
|
+
proto.MESSAGE,
|
|
933
|
+
number=201,
|
|
934
|
+
oneof="connectivity",
|
|
935
|
+
message="ForwardSshTunnelConnectivity",
|
|
936
|
+
)
|
|
937
|
+
private_connectivity: "PrivateConnectivity" = proto.Field(
|
|
938
|
+
proto.MESSAGE,
|
|
939
|
+
number=202,
|
|
940
|
+
oneof="connectivity",
|
|
941
|
+
message="PrivateConnectivity",
|
|
942
|
+
)
|
|
943
|
+
|
|
944
|
+
|
|
945
|
+
class OracleColumn(proto.Message):
|
|
946
|
+
r"""Oracle Column.
|
|
947
|
+
|
|
948
|
+
Attributes:
|
|
949
|
+
column (str):
|
|
950
|
+
Column name.
|
|
951
|
+
data_type (str):
|
|
952
|
+
The Oracle data type.
|
|
953
|
+
length (int):
|
|
954
|
+
Column length.
|
|
955
|
+
precision (int):
|
|
956
|
+
Column precision.
|
|
957
|
+
scale (int):
|
|
958
|
+
Column scale.
|
|
959
|
+
encoding (str):
|
|
960
|
+
Column encoding.
|
|
961
|
+
primary_key (bool):
|
|
962
|
+
Whether or not the column represents a
|
|
963
|
+
primary key.
|
|
964
|
+
nullable (bool):
|
|
965
|
+
Whether or not the column can accept a null
|
|
966
|
+
value.
|
|
967
|
+
ordinal_position (int):
|
|
968
|
+
The ordinal position of the column in the
|
|
969
|
+
table.
|
|
970
|
+
"""
|
|
971
|
+
|
|
972
|
+
column: str = proto.Field(
|
|
973
|
+
proto.STRING,
|
|
974
|
+
number=1,
|
|
975
|
+
)
|
|
976
|
+
data_type: str = proto.Field(
|
|
977
|
+
proto.STRING,
|
|
978
|
+
number=2,
|
|
979
|
+
)
|
|
980
|
+
length: int = proto.Field(
|
|
981
|
+
proto.INT32,
|
|
982
|
+
number=3,
|
|
983
|
+
)
|
|
984
|
+
precision: int = proto.Field(
|
|
985
|
+
proto.INT32,
|
|
986
|
+
number=4,
|
|
987
|
+
)
|
|
988
|
+
scale: int = proto.Field(
|
|
989
|
+
proto.INT32,
|
|
990
|
+
number=5,
|
|
991
|
+
)
|
|
992
|
+
encoding: str = proto.Field(
|
|
993
|
+
proto.STRING,
|
|
994
|
+
number=6,
|
|
995
|
+
)
|
|
996
|
+
primary_key: bool = proto.Field(
|
|
997
|
+
proto.BOOL,
|
|
998
|
+
number=7,
|
|
999
|
+
)
|
|
1000
|
+
nullable: bool = proto.Field(
|
|
1001
|
+
proto.BOOL,
|
|
1002
|
+
number=8,
|
|
1003
|
+
)
|
|
1004
|
+
ordinal_position: int = proto.Field(
|
|
1005
|
+
proto.INT32,
|
|
1006
|
+
number=9,
|
|
1007
|
+
)
|
|
1008
|
+
|
|
1009
|
+
|
|
1010
|
+
class OracleTable(proto.Message):
|
|
1011
|
+
r"""Oracle table.
|
|
1012
|
+
|
|
1013
|
+
Attributes:
|
|
1014
|
+
table (str):
|
|
1015
|
+
Table name.
|
|
1016
|
+
oracle_columns (MutableSequence[google.cloud.datastream_v1.types.OracleColumn]):
|
|
1017
|
+
Oracle columns in the schema.
|
|
1018
|
+
When unspecified as part of include/exclude
|
|
1019
|
+
objects, includes/excludes everything.
|
|
1020
|
+
"""
|
|
1021
|
+
|
|
1022
|
+
table: str = proto.Field(
|
|
1023
|
+
proto.STRING,
|
|
1024
|
+
number=1,
|
|
1025
|
+
)
|
|
1026
|
+
oracle_columns: MutableSequence["OracleColumn"] = proto.RepeatedField(
|
|
1027
|
+
proto.MESSAGE,
|
|
1028
|
+
number=2,
|
|
1029
|
+
message="OracleColumn",
|
|
1030
|
+
)
|
|
1031
|
+
|
|
1032
|
+
|
|
1033
|
+
class OracleSchema(proto.Message):
|
|
1034
|
+
r"""Oracle schema.
|
|
1035
|
+
|
|
1036
|
+
Attributes:
|
|
1037
|
+
schema (str):
|
|
1038
|
+
Schema name.
|
|
1039
|
+
oracle_tables (MutableSequence[google.cloud.datastream_v1.types.OracleTable]):
|
|
1040
|
+
Tables in the schema.
|
|
1041
|
+
"""
|
|
1042
|
+
|
|
1043
|
+
schema: str = proto.Field(
|
|
1044
|
+
proto.STRING,
|
|
1045
|
+
number=1,
|
|
1046
|
+
)
|
|
1047
|
+
oracle_tables: MutableSequence["OracleTable"] = proto.RepeatedField(
|
|
1048
|
+
proto.MESSAGE,
|
|
1049
|
+
number=2,
|
|
1050
|
+
message="OracleTable",
|
|
1051
|
+
)
|
|
1052
|
+
|
|
1053
|
+
|
|
1054
|
+
class OracleRdbms(proto.Message):
|
|
1055
|
+
r"""Oracle database structure.
|
|
1056
|
+
|
|
1057
|
+
Attributes:
|
|
1058
|
+
oracle_schemas (MutableSequence[google.cloud.datastream_v1.types.OracleSchema]):
|
|
1059
|
+
Oracle schemas/databases in the database
|
|
1060
|
+
server.
|
|
1061
|
+
"""
|
|
1062
|
+
|
|
1063
|
+
oracle_schemas: MutableSequence["OracleSchema"] = proto.RepeatedField(
|
|
1064
|
+
proto.MESSAGE,
|
|
1065
|
+
number=1,
|
|
1066
|
+
message="OracleSchema",
|
|
1067
|
+
)
|
|
1068
|
+
|
|
1069
|
+
|
|
1070
|
+
class OracleSourceConfig(proto.Message):
|
|
1071
|
+
r"""Oracle data source configuration
|
|
1072
|
+
|
|
1073
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
1074
|
+
For each oneof, at most one member field can be set at the same time.
|
|
1075
|
+
Setting any member of the oneof automatically clears all other
|
|
1076
|
+
members.
|
|
1077
|
+
|
|
1078
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
1079
|
+
|
|
1080
|
+
Attributes:
|
|
1081
|
+
include_objects (google.cloud.datastream_v1.types.OracleRdbms):
|
|
1082
|
+
Oracle objects to include in the stream.
|
|
1083
|
+
exclude_objects (google.cloud.datastream_v1.types.OracleRdbms):
|
|
1084
|
+
Oracle objects to exclude from the stream.
|
|
1085
|
+
max_concurrent_cdc_tasks (int):
|
|
1086
|
+
Maximum number of concurrent CDC tasks. The
|
|
1087
|
+
number should be non-negative. If not set (or
|
|
1088
|
+
set to 0), the system's default value is used.
|
|
1089
|
+
max_concurrent_backfill_tasks (int):
|
|
1090
|
+
Maximum number of concurrent backfill tasks.
|
|
1091
|
+
The number should be non-negative. If not set
|
|
1092
|
+
(or set to 0), the system's default value is
|
|
1093
|
+
used.
|
|
1094
|
+
drop_large_objects (google.cloud.datastream_v1.types.OracleSourceConfig.DropLargeObjects):
|
|
1095
|
+
Drop large object values.
|
|
1096
|
+
|
|
1097
|
+
This field is a member of `oneof`_ ``large_objects_handling``.
|
|
1098
|
+
stream_large_objects (google.cloud.datastream_v1.types.OracleSourceConfig.StreamLargeObjects):
|
|
1099
|
+
Stream large object values.
|
|
1100
|
+
|
|
1101
|
+
This field is a member of `oneof`_ ``large_objects_handling``.
|
|
1102
|
+
log_miner (google.cloud.datastream_v1.types.OracleSourceConfig.LogMiner):
|
|
1103
|
+
Use LogMiner.
|
|
1104
|
+
|
|
1105
|
+
This field is a member of `oneof`_ ``cdc_method``.
|
|
1106
|
+
binary_log_parser (google.cloud.datastream_v1.types.OracleSourceConfig.BinaryLogParser):
|
|
1107
|
+
Use Binary Log Parser.
|
|
1108
|
+
|
|
1109
|
+
This field is a member of `oneof`_ ``cdc_method``.
|
|
1110
|
+
"""
|
|
1111
|
+
|
|
1112
|
+
class DropLargeObjects(proto.Message):
|
|
1113
|
+
r"""Configuration to drop large object values."""
|
|
1114
|
+
|
|
1115
|
+
class StreamLargeObjects(proto.Message):
|
|
1116
|
+
r"""Configuration to stream large object values."""
|
|
1117
|
+
|
|
1118
|
+
class LogMiner(proto.Message):
|
|
1119
|
+
r"""Configuration to use LogMiner CDC method."""
|
|
1120
|
+
|
|
1121
|
+
class BinaryLogParser(proto.Message):
|
|
1122
|
+
r"""Configuration to use Binary Log Parser CDC technique.
|
|
1123
|
+
|
|
1124
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
1125
|
+
For each oneof, at most one member field can be set at the same time.
|
|
1126
|
+
Setting any member of the oneof automatically clears all other
|
|
1127
|
+
members.
|
|
1128
|
+
|
|
1129
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
1130
|
+
|
|
1131
|
+
Attributes:
|
|
1132
|
+
oracle_asm_log_file_access (google.cloud.datastream_v1.types.OracleSourceConfig.BinaryLogParser.OracleAsmLogFileAccess):
|
|
1133
|
+
Use Oracle ASM.
|
|
1134
|
+
|
|
1135
|
+
This field is a member of `oneof`_ ``log_file_access``.
|
|
1136
|
+
log_file_directories (google.cloud.datastream_v1.types.OracleSourceConfig.BinaryLogParser.LogFileDirectories):
|
|
1137
|
+
Use Oracle directories.
|
|
1138
|
+
|
|
1139
|
+
This field is a member of `oneof`_ ``log_file_access``.
|
|
1140
|
+
"""
|
|
1141
|
+
|
|
1142
|
+
class OracleAsmLogFileAccess(proto.Message):
|
|
1143
|
+
r"""Configuration to use Oracle ASM to access the log files."""
|
|
1144
|
+
|
|
1145
|
+
class LogFileDirectories(proto.Message):
|
|
1146
|
+
r"""Configuration to specify the Oracle directories to access the
|
|
1147
|
+
log files.
|
|
1148
|
+
|
|
1149
|
+
Attributes:
|
|
1150
|
+
online_log_directory (str):
|
|
1151
|
+
Required. Oracle directory for online logs.
|
|
1152
|
+
archived_log_directory (str):
|
|
1153
|
+
Required. Oracle directory for archived logs.
|
|
1154
|
+
"""
|
|
1155
|
+
|
|
1156
|
+
online_log_directory: str = proto.Field(
|
|
1157
|
+
proto.STRING,
|
|
1158
|
+
number=1,
|
|
1159
|
+
)
|
|
1160
|
+
archived_log_directory: str = proto.Field(
|
|
1161
|
+
proto.STRING,
|
|
1162
|
+
number=2,
|
|
1163
|
+
)
|
|
1164
|
+
|
|
1165
|
+
oracle_asm_log_file_access: "OracleSourceConfig.BinaryLogParser.OracleAsmLogFileAccess" = proto.Field(
|
|
1166
|
+
proto.MESSAGE,
|
|
1167
|
+
number=1,
|
|
1168
|
+
oneof="log_file_access",
|
|
1169
|
+
message="OracleSourceConfig.BinaryLogParser.OracleAsmLogFileAccess",
|
|
1170
|
+
)
|
|
1171
|
+
log_file_directories: "OracleSourceConfig.BinaryLogParser.LogFileDirectories" = proto.Field(
|
|
1172
|
+
proto.MESSAGE,
|
|
1173
|
+
number=2,
|
|
1174
|
+
oneof="log_file_access",
|
|
1175
|
+
message="OracleSourceConfig.BinaryLogParser.LogFileDirectories",
|
|
1176
|
+
)
|
|
1177
|
+
|
|
1178
|
+
include_objects: "OracleRdbms" = proto.Field(
|
|
1179
|
+
proto.MESSAGE,
|
|
1180
|
+
number=1,
|
|
1181
|
+
message="OracleRdbms",
|
|
1182
|
+
)
|
|
1183
|
+
exclude_objects: "OracleRdbms" = proto.Field(
|
|
1184
|
+
proto.MESSAGE,
|
|
1185
|
+
number=2,
|
|
1186
|
+
message="OracleRdbms",
|
|
1187
|
+
)
|
|
1188
|
+
max_concurrent_cdc_tasks: int = proto.Field(
|
|
1189
|
+
proto.INT32,
|
|
1190
|
+
number=3,
|
|
1191
|
+
)
|
|
1192
|
+
max_concurrent_backfill_tasks: int = proto.Field(
|
|
1193
|
+
proto.INT32,
|
|
1194
|
+
number=4,
|
|
1195
|
+
)
|
|
1196
|
+
drop_large_objects: DropLargeObjects = proto.Field(
|
|
1197
|
+
proto.MESSAGE,
|
|
1198
|
+
number=100,
|
|
1199
|
+
oneof="large_objects_handling",
|
|
1200
|
+
message=DropLargeObjects,
|
|
1201
|
+
)
|
|
1202
|
+
stream_large_objects: StreamLargeObjects = proto.Field(
|
|
1203
|
+
proto.MESSAGE,
|
|
1204
|
+
number=102,
|
|
1205
|
+
oneof="large_objects_handling",
|
|
1206
|
+
message=StreamLargeObjects,
|
|
1207
|
+
)
|
|
1208
|
+
log_miner: LogMiner = proto.Field(
|
|
1209
|
+
proto.MESSAGE,
|
|
1210
|
+
number=103,
|
|
1211
|
+
oneof="cdc_method",
|
|
1212
|
+
message=LogMiner,
|
|
1213
|
+
)
|
|
1214
|
+
binary_log_parser: BinaryLogParser = proto.Field(
|
|
1215
|
+
proto.MESSAGE,
|
|
1216
|
+
number=104,
|
|
1217
|
+
oneof="cdc_method",
|
|
1218
|
+
message=BinaryLogParser,
|
|
1219
|
+
)
|
|
1220
|
+
|
|
1221
|
+
|
|
1222
|
+
class PostgresqlColumn(proto.Message):
|
|
1223
|
+
r"""PostgreSQL Column.
|
|
1224
|
+
|
|
1225
|
+
Attributes:
|
|
1226
|
+
column (str):
|
|
1227
|
+
Column name.
|
|
1228
|
+
data_type (str):
|
|
1229
|
+
The PostgreSQL data type.
|
|
1230
|
+
length (int):
|
|
1231
|
+
Column length.
|
|
1232
|
+
precision (int):
|
|
1233
|
+
Column precision.
|
|
1234
|
+
scale (int):
|
|
1235
|
+
Column scale.
|
|
1236
|
+
primary_key (bool):
|
|
1237
|
+
Whether or not the column represents a
|
|
1238
|
+
primary key.
|
|
1239
|
+
nullable (bool):
|
|
1240
|
+
Whether or not the column can accept a null
|
|
1241
|
+
value.
|
|
1242
|
+
ordinal_position (int):
|
|
1243
|
+
The ordinal position of the column in the
|
|
1244
|
+
table.
|
|
1245
|
+
"""
|
|
1246
|
+
|
|
1247
|
+
column: str = proto.Field(
|
|
1248
|
+
proto.STRING,
|
|
1249
|
+
number=1,
|
|
1250
|
+
)
|
|
1251
|
+
data_type: str = proto.Field(
|
|
1252
|
+
proto.STRING,
|
|
1253
|
+
number=2,
|
|
1254
|
+
)
|
|
1255
|
+
length: int = proto.Field(
|
|
1256
|
+
proto.INT32,
|
|
1257
|
+
number=3,
|
|
1258
|
+
)
|
|
1259
|
+
precision: int = proto.Field(
|
|
1260
|
+
proto.INT32,
|
|
1261
|
+
number=4,
|
|
1262
|
+
)
|
|
1263
|
+
scale: int = proto.Field(
|
|
1264
|
+
proto.INT32,
|
|
1265
|
+
number=5,
|
|
1266
|
+
)
|
|
1267
|
+
primary_key: bool = proto.Field(
|
|
1268
|
+
proto.BOOL,
|
|
1269
|
+
number=7,
|
|
1270
|
+
)
|
|
1271
|
+
nullable: bool = proto.Field(
|
|
1272
|
+
proto.BOOL,
|
|
1273
|
+
number=8,
|
|
1274
|
+
)
|
|
1275
|
+
ordinal_position: int = proto.Field(
|
|
1276
|
+
proto.INT32,
|
|
1277
|
+
number=9,
|
|
1278
|
+
)
|
|
1279
|
+
|
|
1280
|
+
|
|
1281
|
+
class PostgresqlTable(proto.Message):
|
|
1282
|
+
r"""PostgreSQL table.
|
|
1283
|
+
|
|
1284
|
+
Attributes:
|
|
1285
|
+
table (str):
|
|
1286
|
+
Table name.
|
|
1287
|
+
postgresql_columns (MutableSequence[google.cloud.datastream_v1.types.PostgresqlColumn]):
|
|
1288
|
+
PostgreSQL columns in the schema.
|
|
1289
|
+
When unspecified as part of include/exclude
|
|
1290
|
+
objects, includes/excludes everything.
|
|
1291
|
+
"""
|
|
1292
|
+
|
|
1293
|
+
table: str = proto.Field(
|
|
1294
|
+
proto.STRING,
|
|
1295
|
+
number=1,
|
|
1296
|
+
)
|
|
1297
|
+
postgresql_columns: MutableSequence["PostgresqlColumn"] = proto.RepeatedField(
|
|
1298
|
+
proto.MESSAGE,
|
|
1299
|
+
number=2,
|
|
1300
|
+
message="PostgresqlColumn",
|
|
1301
|
+
)
|
|
1302
|
+
|
|
1303
|
+
|
|
1304
|
+
class PostgresqlSchema(proto.Message):
|
|
1305
|
+
r"""PostgreSQL schema.
|
|
1306
|
+
|
|
1307
|
+
Attributes:
|
|
1308
|
+
schema (str):
|
|
1309
|
+
Schema name.
|
|
1310
|
+
postgresql_tables (MutableSequence[google.cloud.datastream_v1.types.PostgresqlTable]):
|
|
1311
|
+
Tables in the schema.
|
|
1312
|
+
"""
|
|
1313
|
+
|
|
1314
|
+
schema: str = proto.Field(
|
|
1315
|
+
proto.STRING,
|
|
1316
|
+
number=1,
|
|
1317
|
+
)
|
|
1318
|
+
postgresql_tables: MutableSequence["PostgresqlTable"] = proto.RepeatedField(
|
|
1319
|
+
proto.MESSAGE,
|
|
1320
|
+
number=2,
|
|
1321
|
+
message="PostgresqlTable",
|
|
1322
|
+
)
|
|
1323
|
+
|
|
1324
|
+
|
|
1325
|
+
class PostgresqlRdbms(proto.Message):
|
|
1326
|
+
r"""PostgreSQL database structure.
|
|
1327
|
+
|
|
1328
|
+
Attributes:
|
|
1329
|
+
postgresql_schemas (MutableSequence[google.cloud.datastream_v1.types.PostgresqlSchema]):
|
|
1330
|
+
PostgreSQL schemas in the database server.
|
|
1331
|
+
"""
|
|
1332
|
+
|
|
1333
|
+
postgresql_schemas: MutableSequence["PostgresqlSchema"] = proto.RepeatedField(
|
|
1334
|
+
proto.MESSAGE,
|
|
1335
|
+
number=1,
|
|
1336
|
+
message="PostgresqlSchema",
|
|
1337
|
+
)
|
|
1338
|
+
|
|
1339
|
+
|
|
1340
|
+
class PostgresqlSourceConfig(proto.Message):
|
|
1341
|
+
r"""PostgreSQL data source configuration
|
|
1342
|
+
|
|
1343
|
+
Attributes:
|
|
1344
|
+
include_objects (google.cloud.datastream_v1.types.PostgresqlRdbms):
|
|
1345
|
+
PostgreSQL objects to include in the stream.
|
|
1346
|
+
exclude_objects (google.cloud.datastream_v1.types.PostgresqlRdbms):
|
|
1347
|
+
PostgreSQL objects to exclude from the
|
|
1348
|
+
stream.
|
|
1349
|
+
replication_slot (str):
|
|
1350
|
+
Required. Immutable. The name of the logical
|
|
1351
|
+
replication slot that's configured with the
|
|
1352
|
+
pgoutput plugin.
|
|
1353
|
+
publication (str):
|
|
1354
|
+
Required. The name of the publication that includes the set
|
|
1355
|
+
of all tables that are defined in the stream's
|
|
1356
|
+
include_objects.
|
|
1357
|
+
max_concurrent_backfill_tasks (int):
|
|
1358
|
+
Maximum number of concurrent backfill tasks.
|
|
1359
|
+
The number should be non negative. If not set
|
|
1360
|
+
(or set to 0), the system's default value will
|
|
1361
|
+
be used.
|
|
1362
|
+
"""
|
|
1363
|
+
|
|
1364
|
+
include_objects: "PostgresqlRdbms" = proto.Field(
|
|
1365
|
+
proto.MESSAGE,
|
|
1366
|
+
number=1,
|
|
1367
|
+
message="PostgresqlRdbms",
|
|
1368
|
+
)
|
|
1369
|
+
exclude_objects: "PostgresqlRdbms" = proto.Field(
|
|
1370
|
+
proto.MESSAGE,
|
|
1371
|
+
number=2,
|
|
1372
|
+
message="PostgresqlRdbms",
|
|
1373
|
+
)
|
|
1374
|
+
replication_slot: str = proto.Field(
|
|
1375
|
+
proto.STRING,
|
|
1376
|
+
number=3,
|
|
1377
|
+
)
|
|
1378
|
+
publication: str = proto.Field(
|
|
1379
|
+
proto.STRING,
|
|
1380
|
+
number=4,
|
|
1381
|
+
)
|
|
1382
|
+
max_concurrent_backfill_tasks: int = proto.Field(
|
|
1383
|
+
proto.INT32,
|
|
1384
|
+
number=5,
|
|
1385
|
+
)
|
|
1386
|
+
|
|
1387
|
+
|
|
1388
|
+
class SqlServerColumn(proto.Message):
|
|
1389
|
+
r"""SQLServer Column.
|
|
1390
|
+
|
|
1391
|
+
Attributes:
|
|
1392
|
+
column (str):
|
|
1393
|
+
Column name.
|
|
1394
|
+
data_type (str):
|
|
1395
|
+
The SQLServer data type.
|
|
1396
|
+
length (int):
|
|
1397
|
+
Column length.
|
|
1398
|
+
precision (int):
|
|
1399
|
+
Column precision.
|
|
1400
|
+
scale (int):
|
|
1401
|
+
Column scale.
|
|
1402
|
+
primary_key (bool):
|
|
1403
|
+
Whether or not the column represents a
|
|
1404
|
+
primary key.
|
|
1405
|
+
nullable (bool):
|
|
1406
|
+
Whether or not the column can accept a null
|
|
1407
|
+
value.
|
|
1408
|
+
ordinal_position (int):
|
|
1409
|
+
The ordinal position of the column in the
|
|
1410
|
+
table.
|
|
1411
|
+
"""
|
|
1412
|
+
|
|
1413
|
+
column: str = proto.Field(
|
|
1414
|
+
proto.STRING,
|
|
1415
|
+
number=1,
|
|
1416
|
+
)
|
|
1417
|
+
data_type: str = proto.Field(
|
|
1418
|
+
proto.STRING,
|
|
1419
|
+
number=2,
|
|
1420
|
+
)
|
|
1421
|
+
length: int = proto.Field(
|
|
1422
|
+
proto.INT32,
|
|
1423
|
+
number=3,
|
|
1424
|
+
)
|
|
1425
|
+
precision: int = proto.Field(
|
|
1426
|
+
proto.INT32,
|
|
1427
|
+
number=4,
|
|
1428
|
+
)
|
|
1429
|
+
scale: int = proto.Field(
|
|
1430
|
+
proto.INT32,
|
|
1431
|
+
number=5,
|
|
1432
|
+
)
|
|
1433
|
+
primary_key: bool = proto.Field(
|
|
1434
|
+
proto.BOOL,
|
|
1435
|
+
number=6,
|
|
1436
|
+
)
|
|
1437
|
+
nullable: bool = proto.Field(
|
|
1438
|
+
proto.BOOL,
|
|
1439
|
+
number=7,
|
|
1440
|
+
)
|
|
1441
|
+
ordinal_position: int = proto.Field(
|
|
1442
|
+
proto.INT32,
|
|
1443
|
+
number=8,
|
|
1444
|
+
)
|
|
1445
|
+
|
|
1446
|
+
|
|
1447
|
+
class SqlServerTable(proto.Message):
|
|
1448
|
+
r"""SQLServer table.
|
|
1449
|
+
|
|
1450
|
+
Attributes:
|
|
1451
|
+
table (str):
|
|
1452
|
+
Table name.
|
|
1453
|
+
columns (MutableSequence[google.cloud.datastream_v1.types.SqlServerColumn]):
|
|
1454
|
+
SQLServer columns in the schema.
|
|
1455
|
+
When unspecified as part of include/exclude
|
|
1456
|
+
objects, includes/excludes everything.
|
|
1457
|
+
"""
|
|
1458
|
+
|
|
1459
|
+
table: str = proto.Field(
|
|
1460
|
+
proto.STRING,
|
|
1461
|
+
number=1,
|
|
1462
|
+
)
|
|
1463
|
+
columns: MutableSequence["SqlServerColumn"] = proto.RepeatedField(
|
|
1464
|
+
proto.MESSAGE,
|
|
1465
|
+
number=2,
|
|
1466
|
+
message="SqlServerColumn",
|
|
1467
|
+
)
|
|
1468
|
+
|
|
1469
|
+
|
|
1470
|
+
class SqlServerSchema(proto.Message):
|
|
1471
|
+
r"""SQLServer schema.
|
|
1472
|
+
|
|
1473
|
+
Attributes:
|
|
1474
|
+
schema (str):
|
|
1475
|
+
Schema name.
|
|
1476
|
+
tables (MutableSequence[google.cloud.datastream_v1.types.SqlServerTable]):
|
|
1477
|
+
Tables in the schema.
|
|
1478
|
+
"""
|
|
1479
|
+
|
|
1480
|
+
schema: str = proto.Field(
|
|
1481
|
+
proto.STRING,
|
|
1482
|
+
number=1,
|
|
1483
|
+
)
|
|
1484
|
+
tables: MutableSequence["SqlServerTable"] = proto.RepeatedField(
|
|
1485
|
+
proto.MESSAGE,
|
|
1486
|
+
number=2,
|
|
1487
|
+
message="SqlServerTable",
|
|
1488
|
+
)
|
|
1489
|
+
|
|
1490
|
+
|
|
1491
|
+
class SqlServerRdbms(proto.Message):
|
|
1492
|
+
r"""SQLServer database structure.
|
|
1493
|
+
|
|
1494
|
+
Attributes:
|
|
1495
|
+
schemas (MutableSequence[google.cloud.datastream_v1.types.SqlServerSchema]):
|
|
1496
|
+
SQLServer schemas in the database server.
|
|
1497
|
+
"""
|
|
1498
|
+
|
|
1499
|
+
schemas: MutableSequence["SqlServerSchema"] = proto.RepeatedField(
|
|
1500
|
+
proto.MESSAGE,
|
|
1501
|
+
number=1,
|
|
1502
|
+
message="SqlServerSchema",
|
|
1503
|
+
)
|
|
1504
|
+
|
|
1505
|
+
|
|
1506
|
+
class SqlServerSourceConfig(proto.Message):
|
|
1507
|
+
r"""SQLServer data source configuration
|
|
1508
|
+
|
|
1509
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
1510
|
+
For each oneof, at most one member field can be set at the same time.
|
|
1511
|
+
Setting any member of the oneof automatically clears all other
|
|
1512
|
+
members.
|
|
1513
|
+
|
|
1514
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
1515
|
+
|
|
1516
|
+
Attributes:
|
|
1517
|
+
include_objects (google.cloud.datastream_v1.types.SqlServerRdbms):
|
|
1518
|
+
SQLServer objects to include in the stream.
|
|
1519
|
+
exclude_objects (google.cloud.datastream_v1.types.SqlServerRdbms):
|
|
1520
|
+
SQLServer objects to exclude from the stream.
|
|
1521
|
+
max_concurrent_cdc_tasks (int):
|
|
1522
|
+
Max concurrent CDC tasks.
|
|
1523
|
+
max_concurrent_backfill_tasks (int):
|
|
1524
|
+
Max concurrent backfill tasks.
|
|
1525
|
+
transaction_logs (google.cloud.datastream_v1.types.SqlServerTransactionLogs):
|
|
1526
|
+
CDC reader reads from transaction logs.
|
|
1527
|
+
|
|
1528
|
+
This field is a member of `oneof`_ ``cdc_method``.
|
|
1529
|
+
change_tables (google.cloud.datastream_v1.types.SqlServerChangeTables):
|
|
1530
|
+
CDC reader reads from change tables.
|
|
1531
|
+
|
|
1532
|
+
This field is a member of `oneof`_ ``cdc_method``.
|
|
1533
|
+
"""
|
|
1534
|
+
|
|
1535
|
+
include_objects: "SqlServerRdbms" = proto.Field(
|
|
1536
|
+
proto.MESSAGE,
|
|
1537
|
+
number=1,
|
|
1538
|
+
message="SqlServerRdbms",
|
|
1539
|
+
)
|
|
1540
|
+
exclude_objects: "SqlServerRdbms" = proto.Field(
|
|
1541
|
+
proto.MESSAGE,
|
|
1542
|
+
number=2,
|
|
1543
|
+
message="SqlServerRdbms",
|
|
1544
|
+
)
|
|
1545
|
+
max_concurrent_cdc_tasks: int = proto.Field(
|
|
1546
|
+
proto.INT32,
|
|
1547
|
+
number=3,
|
|
1548
|
+
)
|
|
1549
|
+
max_concurrent_backfill_tasks: int = proto.Field(
|
|
1550
|
+
proto.INT32,
|
|
1551
|
+
number=4,
|
|
1552
|
+
)
|
|
1553
|
+
transaction_logs: "SqlServerTransactionLogs" = proto.Field(
|
|
1554
|
+
proto.MESSAGE,
|
|
1555
|
+
number=101,
|
|
1556
|
+
oneof="cdc_method",
|
|
1557
|
+
message="SqlServerTransactionLogs",
|
|
1558
|
+
)
|
|
1559
|
+
change_tables: "SqlServerChangeTables" = proto.Field(
|
|
1560
|
+
proto.MESSAGE,
|
|
1561
|
+
number=102,
|
|
1562
|
+
oneof="cdc_method",
|
|
1563
|
+
message="SqlServerChangeTables",
|
|
1564
|
+
)
|
|
1565
|
+
|
|
1566
|
+
|
|
1567
|
+
class SqlServerTransactionLogs(proto.Message):
|
|
1568
|
+
r"""Configuration to use Transaction Logs CDC read method."""
|
|
1569
|
+
|
|
1570
|
+
|
|
1571
|
+
class SqlServerChangeTables(proto.Message):
|
|
1572
|
+
r"""Configuration to use Change Tables CDC read method."""
|
|
1573
|
+
|
|
1574
|
+
|
|
1575
|
+
class MysqlColumn(proto.Message):
|
|
1576
|
+
r"""MySQL Column.
|
|
1577
|
+
|
|
1578
|
+
Attributes:
|
|
1579
|
+
column (str):
|
|
1580
|
+
Column name.
|
|
1581
|
+
data_type (str):
|
|
1582
|
+
The MySQL data type. Full data types list can
|
|
1583
|
+
be found here:
|
|
1584
|
+
https://dev.mysql.com/doc/refman/8.0/en/data-types.html
|
|
1585
|
+
length (int):
|
|
1586
|
+
Column length.
|
|
1587
|
+
collation (str):
|
|
1588
|
+
Column collation.
|
|
1589
|
+
primary_key (bool):
|
|
1590
|
+
Whether or not the column represents a
|
|
1591
|
+
primary key.
|
|
1592
|
+
nullable (bool):
|
|
1593
|
+
Whether or not the column can accept a null
|
|
1594
|
+
value.
|
|
1595
|
+
ordinal_position (int):
|
|
1596
|
+
The ordinal position of the column in the
|
|
1597
|
+
table.
|
|
1598
|
+
precision (int):
|
|
1599
|
+
Column precision.
|
|
1600
|
+
scale (int):
|
|
1601
|
+
Column scale.
|
|
1602
|
+
"""
|
|
1603
|
+
|
|
1604
|
+
column: str = proto.Field(
|
|
1605
|
+
proto.STRING,
|
|
1606
|
+
number=1,
|
|
1607
|
+
)
|
|
1608
|
+
data_type: str = proto.Field(
|
|
1609
|
+
proto.STRING,
|
|
1610
|
+
number=2,
|
|
1611
|
+
)
|
|
1612
|
+
length: int = proto.Field(
|
|
1613
|
+
proto.INT32,
|
|
1614
|
+
number=3,
|
|
1615
|
+
)
|
|
1616
|
+
collation: str = proto.Field(
|
|
1617
|
+
proto.STRING,
|
|
1618
|
+
number=4,
|
|
1619
|
+
)
|
|
1620
|
+
primary_key: bool = proto.Field(
|
|
1621
|
+
proto.BOOL,
|
|
1622
|
+
number=5,
|
|
1623
|
+
)
|
|
1624
|
+
nullable: bool = proto.Field(
|
|
1625
|
+
proto.BOOL,
|
|
1626
|
+
number=6,
|
|
1627
|
+
)
|
|
1628
|
+
ordinal_position: int = proto.Field(
|
|
1629
|
+
proto.INT32,
|
|
1630
|
+
number=7,
|
|
1631
|
+
)
|
|
1632
|
+
precision: int = proto.Field(
|
|
1633
|
+
proto.INT32,
|
|
1634
|
+
number=8,
|
|
1635
|
+
)
|
|
1636
|
+
scale: int = proto.Field(
|
|
1637
|
+
proto.INT32,
|
|
1638
|
+
number=9,
|
|
1639
|
+
)
|
|
1640
|
+
|
|
1641
|
+
|
|
1642
|
+
class MysqlTable(proto.Message):
|
|
1643
|
+
r"""MySQL table.
|
|
1644
|
+
|
|
1645
|
+
Attributes:
|
|
1646
|
+
table (str):
|
|
1647
|
+
Table name.
|
|
1648
|
+
mysql_columns (MutableSequence[google.cloud.datastream_v1.types.MysqlColumn]):
|
|
1649
|
+
MySQL columns in the database.
|
|
1650
|
+
When unspecified as part of include/exclude
|
|
1651
|
+
objects, includes/excludes everything.
|
|
1652
|
+
"""
|
|
1653
|
+
|
|
1654
|
+
table: str = proto.Field(
|
|
1655
|
+
proto.STRING,
|
|
1656
|
+
number=1,
|
|
1657
|
+
)
|
|
1658
|
+
mysql_columns: MutableSequence["MysqlColumn"] = proto.RepeatedField(
|
|
1659
|
+
proto.MESSAGE,
|
|
1660
|
+
number=2,
|
|
1661
|
+
message="MysqlColumn",
|
|
1662
|
+
)
|
|
1663
|
+
|
|
1664
|
+
|
|
1665
|
+
class MysqlDatabase(proto.Message):
|
|
1666
|
+
r"""MySQL database.
|
|
1667
|
+
|
|
1668
|
+
Attributes:
|
|
1669
|
+
database (str):
|
|
1670
|
+
Database name.
|
|
1671
|
+
mysql_tables (MutableSequence[google.cloud.datastream_v1.types.MysqlTable]):
|
|
1672
|
+
Tables in the database.
|
|
1673
|
+
"""
|
|
1674
|
+
|
|
1675
|
+
database: str = proto.Field(
|
|
1676
|
+
proto.STRING,
|
|
1677
|
+
number=1,
|
|
1678
|
+
)
|
|
1679
|
+
mysql_tables: MutableSequence["MysqlTable"] = proto.RepeatedField(
|
|
1680
|
+
proto.MESSAGE,
|
|
1681
|
+
number=2,
|
|
1682
|
+
message="MysqlTable",
|
|
1683
|
+
)
|
|
1684
|
+
|
|
1685
|
+
|
|
1686
|
+
class MysqlRdbms(proto.Message):
|
|
1687
|
+
r"""MySQL database structure
|
|
1688
|
+
|
|
1689
|
+
Attributes:
|
|
1690
|
+
mysql_databases (MutableSequence[google.cloud.datastream_v1.types.MysqlDatabase]):
|
|
1691
|
+
Mysql databases on the server
|
|
1692
|
+
"""
|
|
1693
|
+
|
|
1694
|
+
mysql_databases: MutableSequence["MysqlDatabase"] = proto.RepeatedField(
|
|
1695
|
+
proto.MESSAGE,
|
|
1696
|
+
number=1,
|
|
1697
|
+
message="MysqlDatabase",
|
|
1698
|
+
)
|
|
1699
|
+
|
|
1700
|
+
|
|
1701
|
+
class MysqlSourceConfig(proto.Message):
|
|
1702
|
+
r"""MySQL source configuration
|
|
1703
|
+
|
|
1704
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
1705
|
+
For each oneof, at most one member field can be set at the same time.
|
|
1706
|
+
Setting any member of the oneof automatically clears all other
|
|
1707
|
+
members.
|
|
1708
|
+
|
|
1709
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
1710
|
+
|
|
1711
|
+
Attributes:
|
|
1712
|
+
include_objects (google.cloud.datastream_v1.types.MysqlRdbms):
|
|
1713
|
+
MySQL objects to retrieve from the source.
|
|
1714
|
+
exclude_objects (google.cloud.datastream_v1.types.MysqlRdbms):
|
|
1715
|
+
MySQL objects to exclude from the stream.
|
|
1716
|
+
max_concurrent_cdc_tasks (int):
|
|
1717
|
+
Maximum number of concurrent CDC tasks. The
|
|
1718
|
+
number should be non negative. If not set (or
|
|
1719
|
+
set to 0), the system's default value will be
|
|
1720
|
+
used.
|
|
1721
|
+
max_concurrent_backfill_tasks (int):
|
|
1722
|
+
Maximum number of concurrent backfill tasks.
|
|
1723
|
+
The number should be non negative. If not set
|
|
1724
|
+
(or set to 0), the system's default value will
|
|
1725
|
+
be used.
|
|
1726
|
+
binary_log_position (google.cloud.datastream_v1.types.MysqlSourceConfig.BinaryLogPosition):
|
|
1727
|
+
Use Binary log position based replication.
|
|
1728
|
+
|
|
1729
|
+
This field is a member of `oneof`_ ``cdc_method``.
|
|
1730
|
+
gtid (google.cloud.datastream_v1.types.MysqlSourceConfig.Gtid):
|
|
1731
|
+
Use GTID based replication.
|
|
1732
|
+
|
|
1733
|
+
This field is a member of `oneof`_ ``cdc_method``.
|
|
1734
|
+
"""
|
|
1735
|
+
|
|
1736
|
+
class BinaryLogPosition(proto.Message):
|
|
1737
|
+
r"""Use Binary log position based replication."""
|
|
1738
|
+
|
|
1739
|
+
class Gtid(proto.Message):
|
|
1740
|
+
r"""Use GTID based replication."""
|
|
1741
|
+
|
|
1742
|
+
include_objects: "MysqlRdbms" = proto.Field(
|
|
1743
|
+
proto.MESSAGE,
|
|
1744
|
+
number=1,
|
|
1745
|
+
message="MysqlRdbms",
|
|
1746
|
+
)
|
|
1747
|
+
exclude_objects: "MysqlRdbms" = proto.Field(
|
|
1748
|
+
proto.MESSAGE,
|
|
1749
|
+
number=2,
|
|
1750
|
+
message="MysqlRdbms",
|
|
1751
|
+
)
|
|
1752
|
+
max_concurrent_cdc_tasks: int = proto.Field(
|
|
1753
|
+
proto.INT32,
|
|
1754
|
+
number=3,
|
|
1755
|
+
)
|
|
1756
|
+
max_concurrent_backfill_tasks: int = proto.Field(
|
|
1757
|
+
proto.INT32,
|
|
1758
|
+
number=4,
|
|
1759
|
+
)
|
|
1760
|
+
binary_log_position: BinaryLogPosition = proto.Field(
|
|
1761
|
+
proto.MESSAGE,
|
|
1762
|
+
number=101,
|
|
1763
|
+
oneof="cdc_method",
|
|
1764
|
+
message=BinaryLogPosition,
|
|
1765
|
+
)
|
|
1766
|
+
gtid: Gtid = proto.Field(
|
|
1767
|
+
proto.MESSAGE,
|
|
1768
|
+
number=102,
|
|
1769
|
+
oneof="cdc_method",
|
|
1770
|
+
message=Gtid,
|
|
1771
|
+
)
|
|
1772
|
+
|
|
1773
|
+
|
|
1774
|
+
class SourceConfig(proto.Message):
|
|
1775
|
+
r"""The configuration of the stream source.
|
|
1776
|
+
|
|
1777
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
1778
|
+
For each oneof, at most one member field can be set at the same time.
|
|
1779
|
+
Setting any member of the oneof automatically clears all other
|
|
1780
|
+
members.
|
|
1781
|
+
|
|
1782
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
1783
|
+
|
|
1784
|
+
Attributes:
|
|
1785
|
+
source_connection_profile (str):
|
|
1786
|
+
Required. Source connection profile resoource. Format:
|
|
1787
|
+
``projects/{project}/locations/{location}/connectionProfiles/{name}``
|
|
1788
|
+
oracle_source_config (google.cloud.datastream_v1.types.OracleSourceConfig):
|
|
1789
|
+
Oracle data source configuration.
|
|
1790
|
+
|
|
1791
|
+
This field is a member of `oneof`_ ``source_stream_config``.
|
|
1792
|
+
mysql_source_config (google.cloud.datastream_v1.types.MysqlSourceConfig):
|
|
1793
|
+
MySQL data source configuration.
|
|
1794
|
+
|
|
1795
|
+
This field is a member of `oneof`_ ``source_stream_config``.
|
|
1796
|
+
postgresql_source_config (google.cloud.datastream_v1.types.PostgresqlSourceConfig):
|
|
1797
|
+
PostgreSQL data source configuration.
|
|
1798
|
+
|
|
1799
|
+
This field is a member of `oneof`_ ``source_stream_config``.
|
|
1800
|
+
sql_server_source_config (google.cloud.datastream_v1.types.SqlServerSourceConfig):
|
|
1801
|
+
SQLServer data source configuration.
|
|
1802
|
+
|
|
1803
|
+
This field is a member of `oneof`_ ``source_stream_config``.
|
|
1804
|
+
"""
|
|
1805
|
+
|
|
1806
|
+
source_connection_profile: str = proto.Field(
|
|
1807
|
+
proto.STRING,
|
|
1808
|
+
number=1,
|
|
1809
|
+
)
|
|
1810
|
+
oracle_source_config: "OracleSourceConfig" = proto.Field(
|
|
1811
|
+
proto.MESSAGE,
|
|
1812
|
+
number=100,
|
|
1813
|
+
oneof="source_stream_config",
|
|
1814
|
+
message="OracleSourceConfig",
|
|
1815
|
+
)
|
|
1816
|
+
mysql_source_config: "MysqlSourceConfig" = proto.Field(
|
|
1817
|
+
proto.MESSAGE,
|
|
1818
|
+
number=101,
|
|
1819
|
+
oneof="source_stream_config",
|
|
1820
|
+
message="MysqlSourceConfig",
|
|
1821
|
+
)
|
|
1822
|
+
postgresql_source_config: "PostgresqlSourceConfig" = proto.Field(
|
|
1823
|
+
proto.MESSAGE,
|
|
1824
|
+
number=102,
|
|
1825
|
+
oneof="source_stream_config",
|
|
1826
|
+
message="PostgresqlSourceConfig",
|
|
1827
|
+
)
|
|
1828
|
+
sql_server_source_config: "SqlServerSourceConfig" = proto.Field(
|
|
1829
|
+
proto.MESSAGE,
|
|
1830
|
+
number=103,
|
|
1831
|
+
oneof="source_stream_config",
|
|
1832
|
+
message="SqlServerSourceConfig",
|
|
1833
|
+
)
|
|
1834
|
+
|
|
1835
|
+
|
|
1836
|
+
class AvroFileFormat(proto.Message):
|
|
1837
|
+
r"""AVRO file format configuration."""
|
|
1838
|
+
|
|
1839
|
+
|
|
1840
|
+
class JsonFileFormat(proto.Message):
|
|
1841
|
+
r"""JSON file format configuration.
|
|
1842
|
+
|
|
1843
|
+
Attributes:
|
|
1844
|
+
schema_file_format (google.cloud.datastream_v1.types.JsonFileFormat.SchemaFileFormat):
|
|
1845
|
+
The schema file format along JSON data files.
|
|
1846
|
+
compression (google.cloud.datastream_v1.types.JsonFileFormat.JsonCompression):
|
|
1847
|
+
Compression of the loaded JSON file.
|
|
1848
|
+
"""
|
|
1849
|
+
|
|
1850
|
+
class SchemaFileFormat(proto.Enum):
|
|
1851
|
+
r"""Schema file format.
|
|
1852
|
+
|
|
1853
|
+
Values:
|
|
1854
|
+
SCHEMA_FILE_FORMAT_UNSPECIFIED (0):
|
|
1855
|
+
Unspecified schema file format.
|
|
1856
|
+
NO_SCHEMA_FILE (1):
|
|
1857
|
+
Do not attach schema file.
|
|
1858
|
+
AVRO_SCHEMA_FILE (2):
|
|
1859
|
+
Avro schema format.
|
|
1860
|
+
"""
|
|
1861
|
+
SCHEMA_FILE_FORMAT_UNSPECIFIED = 0
|
|
1862
|
+
NO_SCHEMA_FILE = 1
|
|
1863
|
+
AVRO_SCHEMA_FILE = 2
|
|
1864
|
+
|
|
1865
|
+
class JsonCompression(proto.Enum):
|
|
1866
|
+
r"""Json file compression.
|
|
1867
|
+
|
|
1868
|
+
Values:
|
|
1869
|
+
JSON_COMPRESSION_UNSPECIFIED (0):
|
|
1870
|
+
Unspecified json file compression.
|
|
1871
|
+
NO_COMPRESSION (1):
|
|
1872
|
+
Do not compress JSON file.
|
|
1873
|
+
GZIP (2):
|
|
1874
|
+
Gzip compression.
|
|
1875
|
+
"""
|
|
1876
|
+
JSON_COMPRESSION_UNSPECIFIED = 0
|
|
1877
|
+
NO_COMPRESSION = 1
|
|
1878
|
+
GZIP = 2
|
|
1879
|
+
|
|
1880
|
+
schema_file_format: SchemaFileFormat = proto.Field(
|
|
1881
|
+
proto.ENUM,
|
|
1882
|
+
number=1,
|
|
1883
|
+
enum=SchemaFileFormat,
|
|
1884
|
+
)
|
|
1885
|
+
compression: JsonCompression = proto.Field(
|
|
1886
|
+
proto.ENUM,
|
|
1887
|
+
number=2,
|
|
1888
|
+
enum=JsonCompression,
|
|
1889
|
+
)
|
|
1890
|
+
|
|
1891
|
+
|
|
1892
|
+
class GcsDestinationConfig(proto.Message):
|
|
1893
|
+
r"""Google Cloud Storage destination configuration
|
|
1894
|
+
|
|
1895
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
1896
|
+
For each oneof, at most one member field can be set at the same time.
|
|
1897
|
+
Setting any member of the oneof automatically clears all other
|
|
1898
|
+
members.
|
|
1899
|
+
|
|
1900
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
1901
|
+
|
|
1902
|
+
Attributes:
|
|
1903
|
+
path (str):
|
|
1904
|
+
Path inside the Cloud Storage bucket to write
|
|
1905
|
+
data to.
|
|
1906
|
+
file_rotation_mb (int):
|
|
1907
|
+
The maximum file size to be saved in the
|
|
1908
|
+
bucket.
|
|
1909
|
+
file_rotation_interval (google.protobuf.duration_pb2.Duration):
|
|
1910
|
+
The maximum duration for which new events are
|
|
1911
|
+
added before a file is closed and a new file is
|
|
1912
|
+
created. Values within the range of 15-60
|
|
1913
|
+
seconds are allowed.
|
|
1914
|
+
avro_file_format (google.cloud.datastream_v1.types.AvroFileFormat):
|
|
1915
|
+
AVRO file format configuration.
|
|
1916
|
+
|
|
1917
|
+
This field is a member of `oneof`_ ``file_format``.
|
|
1918
|
+
json_file_format (google.cloud.datastream_v1.types.JsonFileFormat):
|
|
1919
|
+
JSON file format configuration.
|
|
1920
|
+
|
|
1921
|
+
This field is a member of `oneof`_ ``file_format``.
|
|
1922
|
+
"""
|
|
1923
|
+
|
|
1924
|
+
path: str = proto.Field(
|
|
1925
|
+
proto.STRING,
|
|
1926
|
+
number=1,
|
|
1927
|
+
)
|
|
1928
|
+
file_rotation_mb: int = proto.Field(
|
|
1929
|
+
proto.INT32,
|
|
1930
|
+
number=2,
|
|
1931
|
+
)
|
|
1932
|
+
file_rotation_interval: duration_pb2.Duration = proto.Field(
|
|
1933
|
+
proto.MESSAGE,
|
|
1934
|
+
number=3,
|
|
1935
|
+
message=duration_pb2.Duration,
|
|
1936
|
+
)
|
|
1937
|
+
avro_file_format: "AvroFileFormat" = proto.Field(
|
|
1938
|
+
proto.MESSAGE,
|
|
1939
|
+
number=100,
|
|
1940
|
+
oneof="file_format",
|
|
1941
|
+
message="AvroFileFormat",
|
|
1942
|
+
)
|
|
1943
|
+
json_file_format: "JsonFileFormat" = proto.Field(
|
|
1944
|
+
proto.MESSAGE,
|
|
1945
|
+
number=101,
|
|
1946
|
+
oneof="file_format",
|
|
1947
|
+
message="JsonFileFormat",
|
|
1948
|
+
)
|
|
1949
|
+
|
|
1950
|
+
|
|
1951
|
+
class BigQueryDestinationConfig(proto.Message):
|
|
1952
|
+
r"""BigQuery destination configuration
|
|
1953
|
+
|
|
1954
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
1955
|
+
For each oneof, at most one member field can be set at the same time.
|
|
1956
|
+
Setting any member of the oneof automatically clears all other
|
|
1957
|
+
members.
|
|
1958
|
+
|
|
1959
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
1960
|
+
|
|
1961
|
+
Attributes:
|
|
1962
|
+
single_target_dataset (google.cloud.datastream_v1.types.BigQueryDestinationConfig.SingleTargetDataset):
|
|
1963
|
+
Single destination dataset.
|
|
1964
|
+
|
|
1965
|
+
This field is a member of `oneof`_ ``dataset_config``.
|
|
1966
|
+
source_hierarchy_datasets (google.cloud.datastream_v1.types.BigQueryDestinationConfig.SourceHierarchyDatasets):
|
|
1967
|
+
Source hierarchy datasets.
|
|
1968
|
+
|
|
1969
|
+
This field is a member of `oneof`_ ``dataset_config``.
|
|
1970
|
+
data_freshness (google.protobuf.duration_pb2.Duration):
|
|
1971
|
+
The guaranteed data freshness (in seconds)
|
|
1972
|
+
when querying tables created by the stream.
|
|
1973
|
+
Editing this field will only affect new tables
|
|
1974
|
+
created in the future, but existing tables will
|
|
1975
|
+
not be impacted. Lower values mean that queries
|
|
1976
|
+
will return fresher data, but may result in
|
|
1977
|
+
higher cost.
|
|
1978
|
+
merge (google.cloud.datastream_v1.types.BigQueryDestinationConfig.Merge):
|
|
1979
|
+
The standard mode
|
|
1980
|
+
|
|
1981
|
+
This field is a member of `oneof`_ ``write_mode``.
|
|
1982
|
+
append_only (google.cloud.datastream_v1.types.BigQueryDestinationConfig.AppendOnly):
|
|
1983
|
+
Append only mode
|
|
1984
|
+
|
|
1985
|
+
This field is a member of `oneof`_ ``write_mode``.
|
|
1986
|
+
"""
|
|
1987
|
+
|
|
1988
|
+
class SingleTargetDataset(proto.Message):
|
|
1989
|
+
r"""A single target dataset to which all data will be streamed.
|
|
1990
|
+
|
|
1991
|
+
Attributes:
|
|
1992
|
+
dataset_id (str):
|
|
1993
|
+
The dataset ID of the target dataset.
|
|
1994
|
+
DatasetIds allowed characters:
|
|
1995
|
+
|
|
1996
|
+
https://cloud.google.com/bigquery/docs/reference/rest/v2/datasets#datasetreference.
|
|
1997
|
+
"""
|
|
1998
|
+
|
|
1999
|
+
dataset_id: str = proto.Field(
|
|
2000
|
+
proto.STRING,
|
|
2001
|
+
number=1,
|
|
2002
|
+
)
|
|
2003
|
+
|
|
2004
|
+
class SourceHierarchyDatasets(proto.Message):
|
|
2005
|
+
r"""Destination datasets are created so that hierarchy of the
|
|
2006
|
+
destination data objects matches the source hierarchy.
|
|
2007
|
+
|
|
2008
|
+
Attributes:
|
|
2009
|
+
dataset_template (google.cloud.datastream_v1.types.BigQueryDestinationConfig.SourceHierarchyDatasets.DatasetTemplate):
|
|
2010
|
+
The dataset template to use for dynamic
|
|
2011
|
+
dataset creation.
|
|
2012
|
+
"""
|
|
2013
|
+
|
|
2014
|
+
class DatasetTemplate(proto.Message):
|
|
2015
|
+
r"""Dataset template used for dynamic dataset creation.
|
|
2016
|
+
|
|
2017
|
+
Attributes:
|
|
2018
|
+
location (str):
|
|
2019
|
+
Required. The geographic location where the
|
|
2020
|
+
dataset should reside. See
|
|
2021
|
+
https://cloud.google.com/bigquery/docs/locations
|
|
2022
|
+
for supported locations.
|
|
2023
|
+
dataset_id_prefix (str):
|
|
2024
|
+
If supplied, every created dataset will have its name
|
|
2025
|
+
prefixed by the provided value. The prefix and name will be
|
|
2026
|
+
separated by an underscore. i.e. \_<dataset_name>.
|
|
2027
|
+
kms_key_name (str):
|
|
2028
|
+
Describes the Cloud KMS encryption key that will be used to
|
|
2029
|
+
protect destination BigQuery table. The BigQuery Service
|
|
2030
|
+
Account associated with your project requires access to this
|
|
2031
|
+
encryption key. i.e.
|
|
2032
|
+
projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{cryptoKey}.
|
|
2033
|
+
See
|
|
2034
|
+
https://cloud.google.com/bigquery/docs/customer-managed-encryption
|
|
2035
|
+
for more information.
|
|
2036
|
+
"""
|
|
2037
|
+
|
|
2038
|
+
location: str = proto.Field(
|
|
2039
|
+
proto.STRING,
|
|
2040
|
+
number=1,
|
|
2041
|
+
)
|
|
2042
|
+
dataset_id_prefix: str = proto.Field(
|
|
2043
|
+
proto.STRING,
|
|
2044
|
+
number=2,
|
|
2045
|
+
)
|
|
2046
|
+
kms_key_name: str = proto.Field(
|
|
2047
|
+
proto.STRING,
|
|
2048
|
+
number=3,
|
|
2049
|
+
)
|
|
2050
|
+
|
|
2051
|
+
dataset_template: "BigQueryDestinationConfig.SourceHierarchyDatasets.DatasetTemplate" = proto.Field(
|
|
2052
|
+
proto.MESSAGE,
|
|
2053
|
+
number=2,
|
|
2054
|
+
message="BigQueryDestinationConfig.SourceHierarchyDatasets.DatasetTemplate",
|
|
2055
|
+
)
|
|
2056
|
+
|
|
2057
|
+
class AppendOnly(proto.Message):
|
|
2058
|
+
r"""AppendOnly mode defines that all changes to a table will be
|
|
2059
|
+
written to the destination table.
|
|
2060
|
+
|
|
2061
|
+
"""
|
|
2062
|
+
|
|
2063
|
+
class Merge(proto.Message):
|
|
2064
|
+
r"""Merge mode defines that all changes to a table will be merged
|
|
2065
|
+
at the destination table.
|
|
2066
|
+
|
|
2067
|
+
"""
|
|
2068
|
+
|
|
2069
|
+
single_target_dataset: SingleTargetDataset = proto.Field(
|
|
2070
|
+
proto.MESSAGE,
|
|
2071
|
+
number=201,
|
|
2072
|
+
oneof="dataset_config",
|
|
2073
|
+
message=SingleTargetDataset,
|
|
2074
|
+
)
|
|
2075
|
+
source_hierarchy_datasets: SourceHierarchyDatasets = proto.Field(
|
|
2076
|
+
proto.MESSAGE,
|
|
2077
|
+
number=202,
|
|
2078
|
+
oneof="dataset_config",
|
|
2079
|
+
message=SourceHierarchyDatasets,
|
|
2080
|
+
)
|
|
2081
|
+
data_freshness: duration_pb2.Duration = proto.Field(
|
|
2082
|
+
proto.MESSAGE,
|
|
2083
|
+
number=300,
|
|
2084
|
+
message=duration_pb2.Duration,
|
|
2085
|
+
)
|
|
2086
|
+
merge: Merge = proto.Field(
|
|
2087
|
+
proto.MESSAGE,
|
|
2088
|
+
number=301,
|
|
2089
|
+
oneof="write_mode",
|
|
2090
|
+
message=Merge,
|
|
2091
|
+
)
|
|
2092
|
+
append_only: AppendOnly = proto.Field(
|
|
2093
|
+
proto.MESSAGE,
|
|
2094
|
+
number=302,
|
|
2095
|
+
oneof="write_mode",
|
|
2096
|
+
message=AppendOnly,
|
|
2097
|
+
)
|
|
2098
|
+
|
|
2099
|
+
|
|
2100
|
+
class DestinationConfig(proto.Message):
|
|
2101
|
+
r"""The configuration of the stream destination.
|
|
2102
|
+
|
|
2103
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
2104
|
+
For each oneof, at most one member field can be set at the same time.
|
|
2105
|
+
Setting any member of the oneof automatically clears all other
|
|
2106
|
+
members.
|
|
2107
|
+
|
|
2108
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
2109
|
+
|
|
2110
|
+
Attributes:
|
|
2111
|
+
destination_connection_profile (str):
|
|
2112
|
+
Required. Destination connection profile resource. Format:
|
|
2113
|
+
``projects/{project}/locations/{location}/connectionProfiles/{name}``
|
|
2114
|
+
gcs_destination_config (google.cloud.datastream_v1.types.GcsDestinationConfig):
|
|
2115
|
+
A configuration for how data should be loaded
|
|
2116
|
+
to Cloud Storage.
|
|
2117
|
+
|
|
2118
|
+
This field is a member of `oneof`_ ``destination_stream_config``.
|
|
2119
|
+
bigquery_destination_config (google.cloud.datastream_v1.types.BigQueryDestinationConfig):
|
|
2120
|
+
BigQuery destination configuration.
|
|
2121
|
+
|
|
2122
|
+
This field is a member of `oneof`_ ``destination_stream_config``.
|
|
2123
|
+
"""
|
|
2124
|
+
|
|
2125
|
+
destination_connection_profile: str = proto.Field(
|
|
2126
|
+
proto.STRING,
|
|
2127
|
+
number=1,
|
|
2128
|
+
)
|
|
2129
|
+
gcs_destination_config: "GcsDestinationConfig" = proto.Field(
|
|
2130
|
+
proto.MESSAGE,
|
|
2131
|
+
number=100,
|
|
2132
|
+
oneof="destination_stream_config",
|
|
2133
|
+
message="GcsDestinationConfig",
|
|
2134
|
+
)
|
|
2135
|
+
bigquery_destination_config: "BigQueryDestinationConfig" = proto.Field(
|
|
2136
|
+
proto.MESSAGE,
|
|
2137
|
+
number=101,
|
|
2138
|
+
oneof="destination_stream_config",
|
|
2139
|
+
message="BigQueryDestinationConfig",
|
|
2140
|
+
)
|
|
2141
|
+
|
|
2142
|
+
|
|
2143
|
+
class Stream(proto.Message):
|
|
2144
|
+
r"""A resource representing streaming data from a source to a
|
|
2145
|
+
destination.
|
|
2146
|
+
|
|
2147
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
2148
|
+
For each oneof, at most one member field can be set at the same time.
|
|
2149
|
+
Setting any member of the oneof automatically clears all other
|
|
2150
|
+
members.
|
|
2151
|
+
|
|
2152
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
2153
|
+
|
|
2154
|
+
Attributes:
|
|
2155
|
+
name (str):
|
|
2156
|
+
Output only. Identifier. The stream's name.
|
|
2157
|
+
create_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
2158
|
+
Output only. The creation time of the stream.
|
|
2159
|
+
update_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
2160
|
+
Output only. The last update time of the
|
|
2161
|
+
stream.
|
|
2162
|
+
labels (MutableMapping[str, str]):
|
|
2163
|
+
Labels.
|
|
2164
|
+
display_name (str):
|
|
2165
|
+
Required. Display name.
|
|
2166
|
+
source_config (google.cloud.datastream_v1.types.SourceConfig):
|
|
2167
|
+
Required. Source connection profile
|
|
2168
|
+
configuration.
|
|
2169
|
+
destination_config (google.cloud.datastream_v1.types.DestinationConfig):
|
|
2170
|
+
Required. Destination connection profile
|
|
2171
|
+
configuration.
|
|
2172
|
+
state (google.cloud.datastream_v1.types.Stream.State):
|
|
2173
|
+
The state of the stream.
|
|
2174
|
+
backfill_all (google.cloud.datastream_v1.types.Stream.BackfillAllStrategy):
|
|
2175
|
+
Automatically backfill objects included in
|
|
2176
|
+
the stream source configuration. Specific
|
|
2177
|
+
objects can be excluded.
|
|
2178
|
+
|
|
2179
|
+
This field is a member of `oneof`_ ``backfill_strategy``.
|
|
2180
|
+
backfill_none (google.cloud.datastream_v1.types.Stream.BackfillNoneStrategy):
|
|
2181
|
+
Do not automatically backfill any objects.
|
|
2182
|
+
|
|
2183
|
+
This field is a member of `oneof`_ ``backfill_strategy``.
|
|
2184
|
+
errors (MutableSequence[google.cloud.datastream_v1.types.Error]):
|
|
2185
|
+
Output only. Errors on the Stream.
|
|
2186
|
+
customer_managed_encryption_key (str):
|
|
2187
|
+
Immutable. A reference to a KMS encryption
|
|
2188
|
+
key. If provided, it will be used to encrypt the
|
|
2189
|
+
data. If left blank, data will be encrypted
|
|
2190
|
+
using an internal Stream-specific encryption key
|
|
2191
|
+
provisioned through KMS.
|
|
2192
|
+
|
|
2193
|
+
This field is a member of `oneof`_ ``_customer_managed_encryption_key``.
|
|
2194
|
+
last_recovery_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
2195
|
+
Output only. If the stream was recovered, the
|
|
2196
|
+
time of the last recovery. Note: This field is
|
|
2197
|
+
currently experimental.
|
|
2198
|
+
"""
|
|
2199
|
+
|
|
2200
|
+
class State(proto.Enum):
|
|
2201
|
+
r"""Stream state.
|
|
2202
|
+
|
|
2203
|
+
Values:
|
|
2204
|
+
STATE_UNSPECIFIED (0):
|
|
2205
|
+
Unspecified stream state.
|
|
2206
|
+
NOT_STARTED (1):
|
|
2207
|
+
The stream has been created but has not yet
|
|
2208
|
+
started streaming data.
|
|
2209
|
+
RUNNING (2):
|
|
2210
|
+
The stream is running.
|
|
2211
|
+
PAUSED (3):
|
|
2212
|
+
The stream is paused.
|
|
2213
|
+
MAINTENANCE (4):
|
|
2214
|
+
The stream is in maintenance mode.
|
|
2215
|
+
|
|
2216
|
+
Updates are rejected on the resource in this
|
|
2217
|
+
state.
|
|
2218
|
+
FAILED (5):
|
|
2219
|
+
The stream is experiencing an error that is
|
|
2220
|
+
preventing data from being streamed.
|
|
2221
|
+
FAILED_PERMANENTLY (6):
|
|
2222
|
+
The stream has experienced a terminal
|
|
2223
|
+
failure.
|
|
2224
|
+
STARTING (7):
|
|
2225
|
+
The stream is starting, but not yet running.
|
|
2226
|
+
DRAINING (8):
|
|
2227
|
+
The Stream is no longer reading new events,
|
|
2228
|
+
but still writing events in the buffer.
|
|
2229
|
+
"""
|
|
2230
|
+
STATE_UNSPECIFIED = 0
|
|
2231
|
+
NOT_STARTED = 1
|
|
2232
|
+
RUNNING = 2
|
|
2233
|
+
PAUSED = 3
|
|
2234
|
+
MAINTENANCE = 4
|
|
2235
|
+
FAILED = 5
|
|
2236
|
+
FAILED_PERMANENTLY = 6
|
|
2237
|
+
STARTING = 7
|
|
2238
|
+
DRAINING = 8
|
|
2239
|
+
|
|
2240
|
+
class BackfillAllStrategy(proto.Message):
|
|
2241
|
+
r"""Backfill strategy to automatically backfill the Stream's
|
|
2242
|
+
objects. Specific objects can be excluded.
|
|
2243
|
+
|
|
2244
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
2245
|
+
For each oneof, at most one member field can be set at the same time.
|
|
2246
|
+
Setting any member of the oneof automatically clears all other
|
|
2247
|
+
members.
|
|
2248
|
+
|
|
2249
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
2250
|
+
|
|
2251
|
+
Attributes:
|
|
2252
|
+
oracle_excluded_objects (google.cloud.datastream_v1.types.OracleRdbms):
|
|
2253
|
+
Oracle data source objects to avoid
|
|
2254
|
+
backfilling.
|
|
2255
|
+
|
|
2256
|
+
This field is a member of `oneof`_ ``excluded_objects``.
|
|
2257
|
+
mysql_excluded_objects (google.cloud.datastream_v1.types.MysqlRdbms):
|
|
2258
|
+
MySQL data source objects to avoid
|
|
2259
|
+
backfilling.
|
|
2260
|
+
|
|
2261
|
+
This field is a member of `oneof`_ ``excluded_objects``.
|
|
2262
|
+
postgresql_excluded_objects (google.cloud.datastream_v1.types.PostgresqlRdbms):
|
|
2263
|
+
PostgreSQL data source objects to avoid
|
|
2264
|
+
backfilling.
|
|
2265
|
+
|
|
2266
|
+
This field is a member of `oneof`_ ``excluded_objects``.
|
|
2267
|
+
sql_server_excluded_objects (google.cloud.datastream_v1.types.SqlServerRdbms):
|
|
2268
|
+
SQLServer data source objects to avoid
|
|
2269
|
+
backfilling
|
|
2270
|
+
|
|
2271
|
+
This field is a member of `oneof`_ ``excluded_objects``.
|
|
2272
|
+
"""
|
|
2273
|
+
|
|
2274
|
+
oracle_excluded_objects: "OracleRdbms" = proto.Field(
|
|
2275
|
+
proto.MESSAGE,
|
|
2276
|
+
number=1,
|
|
2277
|
+
oneof="excluded_objects",
|
|
2278
|
+
message="OracleRdbms",
|
|
2279
|
+
)
|
|
2280
|
+
mysql_excluded_objects: "MysqlRdbms" = proto.Field(
|
|
2281
|
+
proto.MESSAGE,
|
|
2282
|
+
number=2,
|
|
2283
|
+
oneof="excluded_objects",
|
|
2284
|
+
message="MysqlRdbms",
|
|
2285
|
+
)
|
|
2286
|
+
postgresql_excluded_objects: "PostgresqlRdbms" = proto.Field(
|
|
2287
|
+
proto.MESSAGE,
|
|
2288
|
+
number=3,
|
|
2289
|
+
oneof="excluded_objects",
|
|
2290
|
+
message="PostgresqlRdbms",
|
|
2291
|
+
)
|
|
2292
|
+
sql_server_excluded_objects: "SqlServerRdbms" = proto.Field(
|
|
2293
|
+
proto.MESSAGE,
|
|
2294
|
+
number=4,
|
|
2295
|
+
oneof="excluded_objects",
|
|
2296
|
+
message="SqlServerRdbms",
|
|
2297
|
+
)
|
|
2298
|
+
|
|
2299
|
+
class BackfillNoneStrategy(proto.Message):
|
|
2300
|
+
r"""Backfill strategy to disable automatic backfill for the
|
|
2301
|
+
Stream's objects.
|
|
2302
|
+
|
|
2303
|
+
"""
|
|
2304
|
+
|
|
2305
|
+
name: str = proto.Field(
|
|
2306
|
+
proto.STRING,
|
|
2307
|
+
number=1,
|
|
2308
|
+
)
|
|
2309
|
+
create_time: timestamp_pb2.Timestamp = proto.Field(
|
|
2310
|
+
proto.MESSAGE,
|
|
2311
|
+
number=2,
|
|
2312
|
+
message=timestamp_pb2.Timestamp,
|
|
2313
|
+
)
|
|
2314
|
+
update_time: timestamp_pb2.Timestamp = proto.Field(
|
|
2315
|
+
proto.MESSAGE,
|
|
2316
|
+
number=3,
|
|
2317
|
+
message=timestamp_pb2.Timestamp,
|
|
2318
|
+
)
|
|
2319
|
+
labels: MutableMapping[str, str] = proto.MapField(
|
|
2320
|
+
proto.STRING,
|
|
2321
|
+
proto.STRING,
|
|
2322
|
+
number=4,
|
|
2323
|
+
)
|
|
2324
|
+
display_name: str = proto.Field(
|
|
2325
|
+
proto.STRING,
|
|
2326
|
+
number=5,
|
|
2327
|
+
)
|
|
2328
|
+
source_config: "SourceConfig" = proto.Field(
|
|
2329
|
+
proto.MESSAGE,
|
|
2330
|
+
number=6,
|
|
2331
|
+
message="SourceConfig",
|
|
2332
|
+
)
|
|
2333
|
+
destination_config: "DestinationConfig" = proto.Field(
|
|
2334
|
+
proto.MESSAGE,
|
|
2335
|
+
number=7,
|
|
2336
|
+
message="DestinationConfig",
|
|
2337
|
+
)
|
|
2338
|
+
state: State = proto.Field(
|
|
2339
|
+
proto.ENUM,
|
|
2340
|
+
number=8,
|
|
2341
|
+
enum=State,
|
|
2342
|
+
)
|
|
2343
|
+
backfill_all: BackfillAllStrategy = proto.Field(
|
|
2344
|
+
proto.MESSAGE,
|
|
2345
|
+
number=101,
|
|
2346
|
+
oneof="backfill_strategy",
|
|
2347
|
+
message=BackfillAllStrategy,
|
|
2348
|
+
)
|
|
2349
|
+
backfill_none: BackfillNoneStrategy = proto.Field(
|
|
2350
|
+
proto.MESSAGE,
|
|
2351
|
+
number=102,
|
|
2352
|
+
oneof="backfill_strategy",
|
|
2353
|
+
message=BackfillNoneStrategy,
|
|
2354
|
+
)
|
|
2355
|
+
errors: MutableSequence["Error"] = proto.RepeatedField(
|
|
2356
|
+
proto.MESSAGE,
|
|
2357
|
+
number=9,
|
|
2358
|
+
message="Error",
|
|
2359
|
+
)
|
|
2360
|
+
customer_managed_encryption_key: str = proto.Field(
|
|
2361
|
+
proto.STRING,
|
|
2362
|
+
number=10,
|
|
2363
|
+
optional=True,
|
|
2364
|
+
)
|
|
2365
|
+
last_recovery_time: timestamp_pb2.Timestamp = proto.Field(
|
|
2366
|
+
proto.MESSAGE,
|
|
2367
|
+
number=13,
|
|
2368
|
+
message=timestamp_pb2.Timestamp,
|
|
2369
|
+
)
|
|
2370
|
+
|
|
2371
|
+
|
|
2372
|
+
class StreamObject(proto.Message):
|
|
2373
|
+
r"""A specific stream object (e.g a specific DB table).
|
|
2374
|
+
|
|
2375
|
+
Attributes:
|
|
2376
|
+
name (str):
|
|
2377
|
+
Output only. Identifier. The object
|
|
2378
|
+
resource's name.
|
|
2379
|
+
create_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
2380
|
+
Output only. The creation time of the object.
|
|
2381
|
+
update_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
2382
|
+
Output only. The last update time of the
|
|
2383
|
+
object.
|
|
2384
|
+
display_name (str):
|
|
2385
|
+
Required. Display name.
|
|
2386
|
+
errors (MutableSequence[google.cloud.datastream_v1.types.Error]):
|
|
2387
|
+
Output only. Active errors on the object.
|
|
2388
|
+
backfill_job (google.cloud.datastream_v1.types.BackfillJob):
|
|
2389
|
+
The latest backfill job that was initiated
|
|
2390
|
+
for the stream object.
|
|
2391
|
+
source_object (google.cloud.datastream_v1.types.SourceObjectIdentifier):
|
|
2392
|
+
The object identifier in the data source.
|
|
2393
|
+
"""
|
|
2394
|
+
|
|
2395
|
+
name: str = proto.Field(
|
|
2396
|
+
proto.STRING,
|
|
2397
|
+
number=1,
|
|
2398
|
+
)
|
|
2399
|
+
create_time: timestamp_pb2.Timestamp = proto.Field(
|
|
2400
|
+
proto.MESSAGE,
|
|
2401
|
+
number=2,
|
|
2402
|
+
message=timestamp_pb2.Timestamp,
|
|
2403
|
+
)
|
|
2404
|
+
update_time: timestamp_pb2.Timestamp = proto.Field(
|
|
2405
|
+
proto.MESSAGE,
|
|
2406
|
+
number=3,
|
|
2407
|
+
message=timestamp_pb2.Timestamp,
|
|
2408
|
+
)
|
|
2409
|
+
display_name: str = proto.Field(
|
|
2410
|
+
proto.STRING,
|
|
2411
|
+
number=5,
|
|
2412
|
+
)
|
|
2413
|
+
errors: MutableSequence["Error"] = proto.RepeatedField(
|
|
2414
|
+
proto.MESSAGE,
|
|
2415
|
+
number=6,
|
|
2416
|
+
message="Error",
|
|
2417
|
+
)
|
|
2418
|
+
backfill_job: "BackfillJob" = proto.Field(
|
|
2419
|
+
proto.MESSAGE,
|
|
2420
|
+
number=7,
|
|
2421
|
+
message="BackfillJob",
|
|
2422
|
+
)
|
|
2423
|
+
source_object: "SourceObjectIdentifier" = proto.Field(
|
|
2424
|
+
proto.MESSAGE,
|
|
2425
|
+
number=8,
|
|
2426
|
+
message="SourceObjectIdentifier",
|
|
2427
|
+
)
|
|
2428
|
+
|
|
2429
|
+
|
|
2430
|
+
class SourceObjectIdentifier(proto.Message):
|
|
2431
|
+
r"""Represents an identifier of an object in the data source.
|
|
2432
|
+
|
|
2433
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
2434
|
+
For each oneof, at most one member field can be set at the same time.
|
|
2435
|
+
Setting any member of the oneof automatically clears all other
|
|
2436
|
+
members.
|
|
2437
|
+
|
|
2438
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
2439
|
+
|
|
2440
|
+
Attributes:
|
|
2441
|
+
oracle_identifier (google.cloud.datastream_v1.types.SourceObjectIdentifier.OracleObjectIdentifier):
|
|
2442
|
+
Oracle data source object identifier.
|
|
2443
|
+
|
|
2444
|
+
This field is a member of `oneof`_ ``source_identifier``.
|
|
2445
|
+
mysql_identifier (google.cloud.datastream_v1.types.SourceObjectIdentifier.MysqlObjectIdentifier):
|
|
2446
|
+
Mysql data source object identifier.
|
|
2447
|
+
|
|
2448
|
+
This field is a member of `oneof`_ ``source_identifier``.
|
|
2449
|
+
postgresql_identifier (google.cloud.datastream_v1.types.SourceObjectIdentifier.PostgresqlObjectIdentifier):
|
|
2450
|
+
PostgreSQL data source object identifier.
|
|
2451
|
+
|
|
2452
|
+
This field is a member of `oneof`_ ``source_identifier``.
|
|
2453
|
+
sql_server_identifier (google.cloud.datastream_v1.types.SourceObjectIdentifier.SqlServerObjectIdentifier):
|
|
2454
|
+
SQLServer data source object identifier.
|
|
2455
|
+
|
|
2456
|
+
This field is a member of `oneof`_ ``source_identifier``.
|
|
2457
|
+
"""
|
|
2458
|
+
|
|
2459
|
+
class OracleObjectIdentifier(proto.Message):
|
|
2460
|
+
r"""Oracle data source object identifier.
|
|
2461
|
+
|
|
2462
|
+
Attributes:
|
|
2463
|
+
schema (str):
|
|
2464
|
+
Required. The schema name.
|
|
2465
|
+
table (str):
|
|
2466
|
+
Required. The table name.
|
|
2467
|
+
"""
|
|
2468
|
+
|
|
2469
|
+
schema: str = proto.Field(
|
|
2470
|
+
proto.STRING,
|
|
2471
|
+
number=1,
|
|
2472
|
+
)
|
|
2473
|
+
table: str = proto.Field(
|
|
2474
|
+
proto.STRING,
|
|
2475
|
+
number=2,
|
|
2476
|
+
)
|
|
2477
|
+
|
|
2478
|
+
class PostgresqlObjectIdentifier(proto.Message):
|
|
2479
|
+
r"""PostgreSQL data source object identifier.
|
|
2480
|
+
|
|
2481
|
+
Attributes:
|
|
2482
|
+
schema (str):
|
|
2483
|
+
Required. The schema name.
|
|
2484
|
+
table (str):
|
|
2485
|
+
Required. The table name.
|
|
2486
|
+
"""
|
|
2487
|
+
|
|
2488
|
+
schema: str = proto.Field(
|
|
2489
|
+
proto.STRING,
|
|
2490
|
+
number=1,
|
|
2491
|
+
)
|
|
2492
|
+
table: str = proto.Field(
|
|
2493
|
+
proto.STRING,
|
|
2494
|
+
number=2,
|
|
2495
|
+
)
|
|
2496
|
+
|
|
2497
|
+
class MysqlObjectIdentifier(proto.Message):
|
|
2498
|
+
r"""Mysql data source object identifier.
|
|
2499
|
+
|
|
2500
|
+
Attributes:
|
|
2501
|
+
database (str):
|
|
2502
|
+
Required. The database name.
|
|
2503
|
+
table (str):
|
|
2504
|
+
Required. The table name.
|
|
2505
|
+
"""
|
|
2506
|
+
|
|
2507
|
+
database: str = proto.Field(
|
|
2508
|
+
proto.STRING,
|
|
2509
|
+
number=1,
|
|
2510
|
+
)
|
|
2511
|
+
table: str = proto.Field(
|
|
2512
|
+
proto.STRING,
|
|
2513
|
+
number=2,
|
|
2514
|
+
)
|
|
2515
|
+
|
|
2516
|
+
class SqlServerObjectIdentifier(proto.Message):
|
|
2517
|
+
r"""SQLServer data source object identifier.
|
|
2518
|
+
|
|
2519
|
+
Attributes:
|
|
2520
|
+
schema (str):
|
|
2521
|
+
Required. The schema name.
|
|
2522
|
+
table (str):
|
|
2523
|
+
Required. The table name.
|
|
2524
|
+
"""
|
|
2525
|
+
|
|
2526
|
+
schema: str = proto.Field(
|
|
2527
|
+
proto.STRING,
|
|
2528
|
+
number=1,
|
|
2529
|
+
)
|
|
2530
|
+
table: str = proto.Field(
|
|
2531
|
+
proto.STRING,
|
|
2532
|
+
number=2,
|
|
2533
|
+
)
|
|
2534
|
+
|
|
2535
|
+
oracle_identifier: OracleObjectIdentifier = proto.Field(
|
|
2536
|
+
proto.MESSAGE,
|
|
2537
|
+
number=1,
|
|
2538
|
+
oneof="source_identifier",
|
|
2539
|
+
message=OracleObjectIdentifier,
|
|
2540
|
+
)
|
|
2541
|
+
mysql_identifier: MysqlObjectIdentifier = proto.Field(
|
|
2542
|
+
proto.MESSAGE,
|
|
2543
|
+
number=2,
|
|
2544
|
+
oneof="source_identifier",
|
|
2545
|
+
message=MysqlObjectIdentifier,
|
|
2546
|
+
)
|
|
2547
|
+
postgresql_identifier: PostgresqlObjectIdentifier = proto.Field(
|
|
2548
|
+
proto.MESSAGE,
|
|
2549
|
+
number=3,
|
|
2550
|
+
oneof="source_identifier",
|
|
2551
|
+
message=PostgresqlObjectIdentifier,
|
|
2552
|
+
)
|
|
2553
|
+
sql_server_identifier: SqlServerObjectIdentifier = proto.Field(
|
|
2554
|
+
proto.MESSAGE,
|
|
2555
|
+
number=4,
|
|
2556
|
+
oneof="source_identifier",
|
|
2557
|
+
message=SqlServerObjectIdentifier,
|
|
2558
|
+
)
|
|
2559
|
+
|
|
2560
|
+
|
|
2561
|
+
class BackfillJob(proto.Message):
|
|
2562
|
+
r"""Represents a backfill job on a specific stream object.
|
|
2563
|
+
|
|
2564
|
+
Attributes:
|
|
2565
|
+
state (google.cloud.datastream_v1.types.BackfillJob.State):
|
|
2566
|
+
Output only. Backfill job state.
|
|
2567
|
+
trigger (google.cloud.datastream_v1.types.BackfillJob.Trigger):
|
|
2568
|
+
Backfill job's triggering reason.
|
|
2569
|
+
last_start_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
2570
|
+
Output only. Backfill job's start time.
|
|
2571
|
+
last_end_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
2572
|
+
Output only. Backfill job's end time.
|
|
2573
|
+
errors (MutableSequence[google.cloud.datastream_v1.types.Error]):
|
|
2574
|
+
Output only. Errors which caused the backfill
|
|
2575
|
+
job to fail.
|
|
2576
|
+
"""
|
|
2577
|
+
|
|
2578
|
+
class State(proto.Enum):
|
|
2579
|
+
r"""State of the stream object's backfill job.
|
|
2580
|
+
|
|
2581
|
+
Values:
|
|
2582
|
+
STATE_UNSPECIFIED (0):
|
|
2583
|
+
Default value.
|
|
2584
|
+
NOT_STARTED (1):
|
|
2585
|
+
Backfill job was never started for the stream
|
|
2586
|
+
object (stream has backfill strategy defined as
|
|
2587
|
+
manual or object was explicitly excluded from
|
|
2588
|
+
automatic backfill).
|
|
2589
|
+
PENDING (2):
|
|
2590
|
+
Backfill job will start pending available
|
|
2591
|
+
resources.
|
|
2592
|
+
ACTIVE (3):
|
|
2593
|
+
Backfill job is running.
|
|
2594
|
+
STOPPED (4):
|
|
2595
|
+
Backfill job stopped (next job run will start
|
|
2596
|
+
from beginning).
|
|
2597
|
+
FAILED (5):
|
|
2598
|
+
Backfill job failed (due to an error).
|
|
2599
|
+
COMPLETED (6):
|
|
2600
|
+
Backfill completed successfully.
|
|
2601
|
+
UNSUPPORTED (7):
|
|
2602
|
+
Backfill job failed since the table structure
|
|
2603
|
+
is currently unsupported for backfill.
|
|
2604
|
+
"""
|
|
2605
|
+
STATE_UNSPECIFIED = 0
|
|
2606
|
+
NOT_STARTED = 1
|
|
2607
|
+
PENDING = 2
|
|
2608
|
+
ACTIVE = 3
|
|
2609
|
+
STOPPED = 4
|
|
2610
|
+
FAILED = 5
|
|
2611
|
+
COMPLETED = 6
|
|
2612
|
+
UNSUPPORTED = 7
|
|
2613
|
+
|
|
2614
|
+
class Trigger(proto.Enum):
|
|
2615
|
+
r"""Triggering reason for a backfill job.
|
|
2616
|
+
|
|
2617
|
+
Values:
|
|
2618
|
+
TRIGGER_UNSPECIFIED (0):
|
|
2619
|
+
Default value.
|
|
2620
|
+
AUTOMATIC (1):
|
|
2621
|
+
Object backfill job was triggered
|
|
2622
|
+
automatically according to the stream's backfill
|
|
2623
|
+
strategy.
|
|
2624
|
+
MANUAL (2):
|
|
2625
|
+
Object backfill job was triggered manually
|
|
2626
|
+
using the dedicated API.
|
|
2627
|
+
"""
|
|
2628
|
+
TRIGGER_UNSPECIFIED = 0
|
|
2629
|
+
AUTOMATIC = 1
|
|
2630
|
+
MANUAL = 2
|
|
2631
|
+
|
|
2632
|
+
state: State = proto.Field(
|
|
2633
|
+
proto.ENUM,
|
|
2634
|
+
number=1,
|
|
2635
|
+
enum=State,
|
|
2636
|
+
)
|
|
2637
|
+
trigger: Trigger = proto.Field(
|
|
2638
|
+
proto.ENUM,
|
|
2639
|
+
number=2,
|
|
2640
|
+
enum=Trigger,
|
|
2641
|
+
)
|
|
2642
|
+
last_start_time: timestamp_pb2.Timestamp = proto.Field(
|
|
2643
|
+
proto.MESSAGE,
|
|
2644
|
+
number=3,
|
|
2645
|
+
message=timestamp_pb2.Timestamp,
|
|
2646
|
+
)
|
|
2647
|
+
last_end_time: timestamp_pb2.Timestamp = proto.Field(
|
|
2648
|
+
proto.MESSAGE,
|
|
2649
|
+
number=4,
|
|
2650
|
+
message=timestamp_pb2.Timestamp,
|
|
2651
|
+
)
|
|
2652
|
+
errors: MutableSequence["Error"] = proto.RepeatedField(
|
|
2653
|
+
proto.MESSAGE,
|
|
2654
|
+
number=5,
|
|
2655
|
+
message="Error",
|
|
2656
|
+
)
|
|
2657
|
+
|
|
2658
|
+
|
|
2659
|
+
class Error(proto.Message):
|
|
2660
|
+
r"""Represent a user-facing Error.
|
|
2661
|
+
|
|
2662
|
+
Attributes:
|
|
2663
|
+
reason (str):
|
|
2664
|
+
A title that explains the reason for the
|
|
2665
|
+
error.
|
|
2666
|
+
error_uuid (str):
|
|
2667
|
+
A unique identifier for this specific error,
|
|
2668
|
+
allowing it to be traced throughout the system
|
|
2669
|
+
in logs and API responses.
|
|
2670
|
+
message (str):
|
|
2671
|
+
A message containing more information about
|
|
2672
|
+
the error that occurred.
|
|
2673
|
+
error_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
2674
|
+
The time when the error occurred.
|
|
2675
|
+
details (MutableMapping[str, str]):
|
|
2676
|
+
Additional information about the error.
|
|
2677
|
+
"""
|
|
2678
|
+
|
|
2679
|
+
reason: str = proto.Field(
|
|
2680
|
+
proto.STRING,
|
|
2681
|
+
number=1,
|
|
2682
|
+
)
|
|
2683
|
+
error_uuid: str = proto.Field(
|
|
2684
|
+
proto.STRING,
|
|
2685
|
+
number=2,
|
|
2686
|
+
)
|
|
2687
|
+
message: str = proto.Field(
|
|
2688
|
+
proto.STRING,
|
|
2689
|
+
number=3,
|
|
2690
|
+
)
|
|
2691
|
+
error_time: timestamp_pb2.Timestamp = proto.Field(
|
|
2692
|
+
proto.MESSAGE,
|
|
2693
|
+
number=4,
|
|
2694
|
+
message=timestamp_pb2.Timestamp,
|
|
2695
|
+
)
|
|
2696
|
+
details: MutableMapping[str, str] = proto.MapField(
|
|
2697
|
+
proto.STRING,
|
|
2698
|
+
proto.STRING,
|
|
2699
|
+
number=5,
|
|
2700
|
+
)
|
|
2701
|
+
|
|
2702
|
+
|
|
2703
|
+
class ValidationResult(proto.Message):
|
|
2704
|
+
r"""Contains the current validation results.
|
|
2705
|
+
|
|
2706
|
+
Attributes:
|
|
2707
|
+
validations (MutableSequence[google.cloud.datastream_v1.types.Validation]):
|
|
2708
|
+
A list of validations (includes both executed
|
|
2709
|
+
as well as not executed validations).
|
|
2710
|
+
"""
|
|
2711
|
+
|
|
2712
|
+
validations: MutableSequence["Validation"] = proto.RepeatedField(
|
|
2713
|
+
proto.MESSAGE,
|
|
2714
|
+
number=1,
|
|
2715
|
+
message="Validation",
|
|
2716
|
+
)
|
|
2717
|
+
|
|
2718
|
+
|
|
2719
|
+
class Validation(proto.Message):
|
|
2720
|
+
r"""A validation to perform on a stream.
|
|
2721
|
+
|
|
2722
|
+
Attributes:
|
|
2723
|
+
description (str):
|
|
2724
|
+
A short description of the validation.
|
|
2725
|
+
state (google.cloud.datastream_v1.types.Validation.State):
|
|
2726
|
+
Output only. Validation execution status.
|
|
2727
|
+
message (MutableSequence[google.cloud.datastream_v1.types.ValidationMessage]):
|
|
2728
|
+
Messages reflecting the validation results.
|
|
2729
|
+
code (str):
|
|
2730
|
+
A custom code identifying this validation.
|
|
2731
|
+
"""
|
|
2732
|
+
|
|
2733
|
+
class State(proto.Enum):
|
|
2734
|
+
r"""Validation execution state.
|
|
2735
|
+
|
|
2736
|
+
Values:
|
|
2737
|
+
STATE_UNSPECIFIED (0):
|
|
2738
|
+
Unspecified state.
|
|
2739
|
+
NOT_EXECUTED (1):
|
|
2740
|
+
Validation did not execute.
|
|
2741
|
+
FAILED (2):
|
|
2742
|
+
Validation failed.
|
|
2743
|
+
PASSED (3):
|
|
2744
|
+
Validation passed.
|
|
2745
|
+
WARNING (4):
|
|
2746
|
+
Validation executed with warnings.
|
|
2747
|
+
"""
|
|
2748
|
+
STATE_UNSPECIFIED = 0
|
|
2749
|
+
NOT_EXECUTED = 1
|
|
2750
|
+
FAILED = 2
|
|
2751
|
+
PASSED = 3
|
|
2752
|
+
WARNING = 4
|
|
2753
|
+
|
|
2754
|
+
description: str = proto.Field(
|
|
2755
|
+
proto.STRING,
|
|
2756
|
+
number=1,
|
|
2757
|
+
)
|
|
2758
|
+
state: State = proto.Field(
|
|
2759
|
+
proto.ENUM,
|
|
2760
|
+
number=2,
|
|
2761
|
+
enum=State,
|
|
2762
|
+
)
|
|
2763
|
+
message: MutableSequence["ValidationMessage"] = proto.RepeatedField(
|
|
2764
|
+
proto.MESSAGE,
|
|
2765
|
+
number=3,
|
|
2766
|
+
message="ValidationMessage",
|
|
2767
|
+
)
|
|
2768
|
+
code: str = proto.Field(
|
|
2769
|
+
proto.STRING,
|
|
2770
|
+
number=4,
|
|
2771
|
+
)
|
|
2772
|
+
|
|
2773
|
+
|
|
2774
|
+
class ValidationMessage(proto.Message):
|
|
2775
|
+
r"""Represent user-facing validation result message.
|
|
2776
|
+
|
|
2777
|
+
Attributes:
|
|
2778
|
+
message (str):
|
|
2779
|
+
The result of the validation.
|
|
2780
|
+
level (google.cloud.datastream_v1.types.ValidationMessage.Level):
|
|
2781
|
+
Message severity level (warning or error).
|
|
2782
|
+
metadata (MutableMapping[str, str]):
|
|
2783
|
+
Additional metadata related to the result.
|
|
2784
|
+
code (str):
|
|
2785
|
+
A custom code identifying this specific
|
|
2786
|
+
message.
|
|
2787
|
+
"""
|
|
2788
|
+
|
|
2789
|
+
class Level(proto.Enum):
|
|
2790
|
+
r"""Validation message level.
|
|
2791
|
+
|
|
2792
|
+
Values:
|
|
2793
|
+
LEVEL_UNSPECIFIED (0):
|
|
2794
|
+
Unspecified level.
|
|
2795
|
+
WARNING (1):
|
|
2796
|
+
Potentially cause issues with the Stream.
|
|
2797
|
+
ERROR (2):
|
|
2798
|
+
Definitely cause issues with the Stream.
|
|
2799
|
+
"""
|
|
2800
|
+
LEVEL_UNSPECIFIED = 0
|
|
2801
|
+
WARNING = 1
|
|
2802
|
+
ERROR = 2
|
|
2803
|
+
|
|
2804
|
+
message: str = proto.Field(
|
|
2805
|
+
proto.STRING,
|
|
2806
|
+
number=1,
|
|
2807
|
+
)
|
|
2808
|
+
level: Level = proto.Field(
|
|
2809
|
+
proto.ENUM,
|
|
2810
|
+
number=2,
|
|
2811
|
+
enum=Level,
|
|
2812
|
+
)
|
|
2813
|
+
metadata: MutableMapping[str, str] = proto.MapField(
|
|
2814
|
+
proto.STRING,
|
|
2815
|
+
proto.STRING,
|
|
2816
|
+
number=3,
|
|
2817
|
+
)
|
|
2818
|
+
code: str = proto.Field(
|
|
2819
|
+
proto.STRING,
|
|
2820
|
+
number=4,
|
|
2821
|
+
)
|
|
2822
|
+
|
|
2823
|
+
|
|
2824
|
+
class CdcStrategy(proto.Message):
|
|
2825
|
+
r"""The strategy that the stream uses for CDC replication.
|
|
2826
|
+
|
|
2827
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
2828
|
+
For each oneof, at most one member field can be set at the same time.
|
|
2829
|
+
Setting any member of the oneof automatically clears all other
|
|
2830
|
+
members.
|
|
2831
|
+
|
|
2832
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
2833
|
+
|
|
2834
|
+
Attributes:
|
|
2835
|
+
most_recent_start_position (google.cloud.datastream_v1.types.CdcStrategy.MostRecentStartPosition):
|
|
2836
|
+
Optional. Start replicating from the most
|
|
2837
|
+
recent position in the source.
|
|
2838
|
+
|
|
2839
|
+
This field is a member of `oneof`_ ``start_position``.
|
|
2840
|
+
next_available_start_position (google.cloud.datastream_v1.types.CdcStrategy.NextAvailableStartPosition):
|
|
2841
|
+
Optional. Resume replication from the next
|
|
2842
|
+
available position in the source.
|
|
2843
|
+
|
|
2844
|
+
This field is a member of `oneof`_ ``start_position``.
|
|
2845
|
+
specific_start_position (google.cloud.datastream_v1.types.CdcStrategy.SpecificStartPosition):
|
|
2846
|
+
Optional. Start replicating from a specific
|
|
2847
|
+
position in the source.
|
|
2848
|
+
|
|
2849
|
+
This field is a member of `oneof`_ ``start_position``.
|
|
2850
|
+
"""
|
|
2851
|
+
|
|
2852
|
+
class MostRecentStartPosition(proto.Message):
|
|
2853
|
+
r"""CDC strategy to start replicating from the most recent
|
|
2854
|
+
position in the source.
|
|
2855
|
+
|
|
2856
|
+
"""
|
|
2857
|
+
|
|
2858
|
+
class NextAvailableStartPosition(proto.Message):
|
|
2859
|
+
r"""CDC strategy to resume replication from the next available
|
|
2860
|
+
position in the source.
|
|
2861
|
+
|
|
2862
|
+
"""
|
|
2863
|
+
|
|
2864
|
+
class SpecificStartPosition(proto.Message):
|
|
2865
|
+
r"""CDC strategy to start replicating from a specific position in
|
|
2866
|
+
the source.
|
|
2867
|
+
|
|
2868
|
+
This message has `oneof`_ fields (mutually exclusive fields).
|
|
2869
|
+
For each oneof, at most one member field can be set at the same time.
|
|
2870
|
+
Setting any member of the oneof automatically clears all other
|
|
2871
|
+
members.
|
|
2872
|
+
|
|
2873
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
2874
|
+
|
|
2875
|
+
Attributes:
|
|
2876
|
+
mysql_log_position (google.cloud.datastream_v1.types.MysqlLogPosition):
|
|
2877
|
+
MySQL specific log position to start
|
|
2878
|
+
replicating from.
|
|
2879
|
+
|
|
2880
|
+
This field is a member of `oneof`_ ``position``.
|
|
2881
|
+
oracle_scn_position (google.cloud.datastream_v1.types.OracleScnPosition):
|
|
2882
|
+
Oracle SCN to start replicating from.
|
|
2883
|
+
|
|
2884
|
+
This field is a member of `oneof`_ ``position``.
|
|
2885
|
+
sql_server_lsn_position (google.cloud.datastream_v1.types.SqlServerLsnPosition):
|
|
2886
|
+
SqlServer LSN to start replicating from.
|
|
2887
|
+
|
|
2888
|
+
This field is a member of `oneof`_ ``position``.
|
|
2889
|
+
"""
|
|
2890
|
+
|
|
2891
|
+
mysql_log_position: "MysqlLogPosition" = proto.Field(
|
|
2892
|
+
proto.MESSAGE,
|
|
2893
|
+
number=101,
|
|
2894
|
+
oneof="position",
|
|
2895
|
+
message="MysqlLogPosition",
|
|
2896
|
+
)
|
|
2897
|
+
oracle_scn_position: "OracleScnPosition" = proto.Field(
|
|
2898
|
+
proto.MESSAGE,
|
|
2899
|
+
number=102,
|
|
2900
|
+
oneof="position",
|
|
2901
|
+
message="OracleScnPosition",
|
|
2902
|
+
)
|
|
2903
|
+
sql_server_lsn_position: "SqlServerLsnPosition" = proto.Field(
|
|
2904
|
+
proto.MESSAGE,
|
|
2905
|
+
number=103,
|
|
2906
|
+
oneof="position",
|
|
2907
|
+
message="SqlServerLsnPosition",
|
|
2908
|
+
)
|
|
2909
|
+
|
|
2910
|
+
most_recent_start_position: MostRecentStartPosition = proto.Field(
|
|
2911
|
+
proto.MESSAGE,
|
|
2912
|
+
number=101,
|
|
2913
|
+
oneof="start_position",
|
|
2914
|
+
message=MostRecentStartPosition,
|
|
2915
|
+
)
|
|
2916
|
+
next_available_start_position: NextAvailableStartPosition = proto.Field(
|
|
2917
|
+
proto.MESSAGE,
|
|
2918
|
+
number=102,
|
|
2919
|
+
oneof="start_position",
|
|
2920
|
+
message=NextAvailableStartPosition,
|
|
2921
|
+
)
|
|
2922
|
+
specific_start_position: SpecificStartPosition = proto.Field(
|
|
2923
|
+
proto.MESSAGE,
|
|
2924
|
+
number=103,
|
|
2925
|
+
oneof="start_position",
|
|
2926
|
+
message=SpecificStartPosition,
|
|
2927
|
+
)
|
|
2928
|
+
|
|
2929
|
+
|
|
2930
|
+
class SqlServerLsnPosition(proto.Message):
|
|
2931
|
+
r"""SQL Server LSN position
|
|
2932
|
+
|
|
2933
|
+
Attributes:
|
|
2934
|
+
lsn (str):
|
|
2935
|
+
Required. Log sequence number (LSN) from
|
|
2936
|
+
where Logs will be read
|
|
2937
|
+
"""
|
|
2938
|
+
|
|
2939
|
+
lsn: str = proto.Field(
|
|
2940
|
+
proto.STRING,
|
|
2941
|
+
number=1,
|
|
2942
|
+
)
|
|
2943
|
+
|
|
2944
|
+
|
|
2945
|
+
class OracleScnPosition(proto.Message):
|
|
2946
|
+
r"""Oracle SCN position
|
|
2947
|
+
|
|
2948
|
+
Attributes:
|
|
2949
|
+
scn (int):
|
|
2950
|
+
Required. SCN number from where Logs will be
|
|
2951
|
+
read
|
|
2952
|
+
"""
|
|
2953
|
+
|
|
2954
|
+
scn: int = proto.Field(
|
|
2955
|
+
proto.INT64,
|
|
2956
|
+
number=1,
|
|
2957
|
+
)
|
|
2958
|
+
|
|
2959
|
+
|
|
2960
|
+
class MysqlLogPosition(proto.Message):
|
|
2961
|
+
r"""MySQL log position
|
|
2962
|
+
|
|
2963
|
+
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields
|
|
2964
|
+
|
|
2965
|
+
Attributes:
|
|
2966
|
+
log_file (str):
|
|
2967
|
+
Required. The binary log file name.
|
|
2968
|
+
log_position (int):
|
|
2969
|
+
Optional. The position within the binary log
|
|
2970
|
+
file. Default is head of file.
|
|
2971
|
+
|
|
2972
|
+
This field is a member of `oneof`_ ``_log_position``.
|
|
2973
|
+
"""
|
|
2974
|
+
|
|
2975
|
+
log_file: str = proto.Field(
|
|
2976
|
+
proto.STRING,
|
|
2977
|
+
number=1,
|
|
2978
|
+
)
|
|
2979
|
+
log_position: int = proto.Field(
|
|
2980
|
+
proto.INT32,
|
|
2981
|
+
number=2,
|
|
2982
|
+
optional=True,
|
|
2983
|
+
)
|
|
2984
|
+
|
|
2985
|
+
|
|
2986
|
+
__all__ = tuple(sorted(__protobuf__.manifest))
|