google-cloud-spanner 3.55.0__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.
Files changed (119) hide show
  1. google/cloud/spanner.py +47 -0
  2. google/cloud/spanner_admin_database_v1/__init__.py +146 -0
  3. google/cloud/spanner_admin_database_v1/gapic_metadata.json +418 -0
  4. google/cloud/spanner_admin_database_v1/gapic_version.py +16 -0
  5. google/cloud/spanner_admin_database_v1/py.typed +2 -0
  6. google/cloud/spanner_admin_database_v1/services/__init__.py +15 -0
  7. google/cloud/spanner_admin_database_v1/services/database_admin/__init__.py +22 -0
  8. google/cloud/spanner_admin_database_v1/services/database_admin/async_client.py +4097 -0
  9. google/cloud/spanner_admin_database_v1/services/database_admin/client.py +4602 -0
  10. google/cloud/spanner_admin_database_v1/services/database_admin/pagers.py +989 -0
  11. google/cloud/spanner_admin_database_v1/services/database_admin/transports/__init__.py +38 -0
  12. google/cloud/spanner_admin_database_v1/services/database_admin/transports/base.py +820 -0
  13. google/cloud/spanner_admin_database_v1/services/database_admin/transports/grpc.py +1303 -0
  14. google/cloud/spanner_admin_database_v1/services/database_admin/transports/grpc_asyncio.py +1688 -0
  15. google/cloud/spanner_admin_database_v1/services/database_admin/transports/rest.py +6512 -0
  16. google/cloud/spanner_admin_database_v1/services/database_admin/transports/rest_base.py +1650 -0
  17. google/cloud/spanner_admin_database_v1/types/__init__.py +144 -0
  18. google/cloud/spanner_admin_database_v1/types/backup.py +1106 -0
  19. google/cloud/spanner_admin_database_v1/types/backup_schedule.py +369 -0
  20. google/cloud/spanner_admin_database_v1/types/common.py +180 -0
  21. google/cloud/spanner_admin_database_v1/types/spanner_database_admin.py +1303 -0
  22. google/cloud/spanner_admin_instance_v1/__init__.py +110 -0
  23. google/cloud/spanner_admin_instance_v1/gapic_metadata.json +343 -0
  24. google/cloud/spanner_admin_instance_v1/gapic_version.py +16 -0
  25. google/cloud/spanner_admin_instance_v1/py.typed +2 -0
  26. google/cloud/spanner_admin_instance_v1/services/__init__.py +15 -0
  27. google/cloud/spanner_admin_instance_v1/services/instance_admin/__init__.py +22 -0
  28. google/cloud/spanner_admin_instance_v1/services/instance_admin/async_client.py +3466 -0
  29. google/cloud/spanner_admin_instance_v1/services/instance_admin/client.py +3881 -0
  30. google/cloud/spanner_admin_instance_v1/services/instance_admin/pagers.py +856 -0
  31. google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/__init__.py +38 -0
  32. google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/base.py +545 -0
  33. google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/grpc.py +1347 -0
  34. google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/grpc_asyncio.py +1539 -0
  35. google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/rest.py +4834 -0
  36. google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/rest_base.py +1198 -0
  37. google/cloud/spanner_admin_instance_v1/types/__init__.py +104 -0
  38. google/cloud/spanner_admin_instance_v1/types/common.py +99 -0
  39. google/cloud/spanner_admin_instance_v1/types/spanner_instance_admin.py +2375 -0
  40. google/cloud/spanner_dbapi/__init__.py +93 -0
  41. google/cloud/spanner_dbapi/_helpers.py +113 -0
  42. google/cloud/spanner_dbapi/batch_dml_executor.py +135 -0
  43. google/cloud/spanner_dbapi/checksum.py +80 -0
  44. google/cloud/spanner_dbapi/client_side_statement_executor.py +140 -0
  45. google/cloud/spanner_dbapi/client_side_statement_parser.py +106 -0
  46. google/cloud/spanner_dbapi/connection.py +818 -0
  47. google/cloud/spanner_dbapi/cursor.py +609 -0
  48. google/cloud/spanner_dbapi/exceptions.py +172 -0
  49. google/cloud/spanner_dbapi/parse_utils.py +392 -0
  50. google/cloud/spanner_dbapi/parsed_statement.py +63 -0
  51. google/cloud/spanner_dbapi/parser.py +258 -0
  52. google/cloud/spanner_dbapi/partition_helper.py +41 -0
  53. google/cloud/spanner_dbapi/transaction_helper.py +294 -0
  54. google/cloud/spanner_dbapi/types.py +106 -0
  55. google/cloud/spanner_dbapi/utils.py +147 -0
  56. google/cloud/spanner_dbapi/version.py +20 -0
  57. google/cloud/spanner_v1/__init__.py +154 -0
  58. google/cloud/spanner_v1/_helpers.py +751 -0
  59. google/cloud/spanner_v1/_opentelemetry_tracing.py +165 -0
  60. google/cloud/spanner_v1/backup.py +397 -0
  61. google/cloud/spanner_v1/batch.py +433 -0
  62. google/cloud/spanner_v1/client.py +538 -0
  63. google/cloud/spanner_v1/data_types.py +350 -0
  64. google/cloud/spanner_v1/database.py +1968 -0
  65. google/cloud/spanner_v1/database_sessions_manager.py +249 -0
  66. google/cloud/spanner_v1/gapic_metadata.json +268 -0
  67. google/cloud/spanner_v1/gapic_version.py +16 -0
  68. google/cloud/spanner_v1/instance.py +735 -0
  69. google/cloud/spanner_v1/keyset.py +193 -0
  70. google/cloud/spanner_v1/merged_result_set.py +146 -0
  71. google/cloud/spanner_v1/metrics/constants.py +71 -0
  72. google/cloud/spanner_v1/metrics/metrics_capture.py +75 -0
  73. google/cloud/spanner_v1/metrics/metrics_exporter.py +384 -0
  74. google/cloud/spanner_v1/metrics/metrics_interceptor.py +156 -0
  75. google/cloud/spanner_v1/metrics/metrics_tracer.py +588 -0
  76. google/cloud/spanner_v1/metrics/metrics_tracer_factory.py +328 -0
  77. google/cloud/spanner_v1/metrics/spanner_metrics_tracer_factory.py +172 -0
  78. google/cloud/spanner_v1/param_types.py +110 -0
  79. google/cloud/spanner_v1/pool.py +813 -0
  80. google/cloud/spanner_v1/py.typed +2 -0
  81. google/cloud/spanner_v1/request_id_header.py +64 -0
  82. google/cloud/spanner_v1/services/__init__.py +15 -0
  83. google/cloud/spanner_v1/services/spanner/__init__.py +22 -0
  84. google/cloud/spanner_v1/services/spanner/async_client.py +2205 -0
  85. google/cloud/spanner_v1/services/spanner/client.py +2624 -0
  86. google/cloud/spanner_v1/services/spanner/pagers.py +196 -0
  87. google/cloud/spanner_v1/services/spanner/transports/__init__.py +38 -0
  88. google/cloud/spanner_v1/services/spanner/transports/base.py +520 -0
  89. google/cloud/spanner_v1/services/spanner/transports/grpc.py +911 -0
  90. google/cloud/spanner_v1/services/spanner/transports/grpc_asyncio.py +1144 -0
  91. google/cloud/spanner_v1/services/spanner/transports/rest.py +3468 -0
  92. google/cloud/spanner_v1/services/spanner/transports/rest_base.py +981 -0
  93. google/cloud/spanner_v1/session.py +631 -0
  94. google/cloud/spanner_v1/session_options.py +133 -0
  95. google/cloud/spanner_v1/snapshot.py +1057 -0
  96. google/cloud/spanner_v1/streamed.py +402 -0
  97. google/cloud/spanner_v1/table.py +181 -0
  98. google/cloud/spanner_v1/testing/__init__.py +0 -0
  99. google/cloud/spanner_v1/testing/database_test.py +121 -0
  100. google/cloud/spanner_v1/testing/interceptors.py +118 -0
  101. google/cloud/spanner_v1/testing/mock_database_admin.py +38 -0
  102. google/cloud/spanner_v1/testing/mock_spanner.py +261 -0
  103. google/cloud/spanner_v1/testing/spanner_database_admin_pb2_grpc.py +1267 -0
  104. google/cloud/spanner_v1/testing/spanner_pb2_grpc.py +882 -0
  105. google/cloud/spanner_v1/transaction.py +747 -0
  106. google/cloud/spanner_v1/types/__init__.py +118 -0
  107. google/cloud/spanner_v1/types/commit_response.py +94 -0
  108. google/cloud/spanner_v1/types/keys.py +248 -0
  109. google/cloud/spanner_v1/types/mutation.py +201 -0
  110. google/cloud/spanner_v1/types/query_plan.py +220 -0
  111. google/cloud/spanner_v1/types/result_set.py +379 -0
  112. google/cloud/spanner_v1/types/spanner.py +1815 -0
  113. google/cloud/spanner_v1/types/transaction.py +818 -0
  114. google/cloud/spanner_v1/types/type.py +288 -0
  115. google_cloud_spanner-3.55.0.dist-info/LICENSE +202 -0
  116. google_cloud_spanner-3.55.0.dist-info/METADATA +318 -0
  117. google_cloud_spanner-3.55.0.dist-info/RECORD +119 -0
  118. google_cloud_spanner-3.55.0.dist-info/WHEEL +5 -0
  119. google_cloud_spanner-3.55.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,820 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Copyright 2025 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
+ import abc
17
+ from typing import Awaitable, Callable, Dict, Optional, Sequence, Union
18
+
19
+ from google.cloud.spanner_admin_database_v1 import gapic_version as package_version
20
+
21
+ import google.auth # type: ignore
22
+ import google.api_core
23
+ from google.api_core import exceptions as core_exceptions
24
+ from google.api_core import gapic_v1
25
+ from google.api_core import retry as retries
26
+ from google.api_core import operations_v1
27
+ from google.auth import credentials as ga_credentials # type: ignore
28
+ from google.oauth2 import service_account # type: ignore
29
+ import google.protobuf
30
+
31
+ from google.cloud.spanner_admin_database_v1.types import backup
32
+ from google.cloud.spanner_admin_database_v1.types import backup as gsad_backup
33
+ from google.cloud.spanner_admin_database_v1.types import backup_schedule
34
+ from google.cloud.spanner_admin_database_v1.types import (
35
+ backup_schedule as gsad_backup_schedule,
36
+ )
37
+ from google.cloud.spanner_admin_database_v1.types import spanner_database_admin
38
+ from google.iam.v1 import iam_policy_pb2 # type: ignore
39
+ from google.iam.v1 import policy_pb2 # type: ignore
40
+ from google.longrunning import operations_pb2 # type: ignore
41
+ from google.protobuf import empty_pb2 # type: ignore
42
+
43
+ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo(
44
+ gapic_version=package_version.__version__
45
+ )
46
+
47
+ if hasattr(DEFAULT_CLIENT_INFO, "protobuf_runtime_version"): # pragma: NO COVER
48
+ DEFAULT_CLIENT_INFO.protobuf_runtime_version = google.protobuf.__version__
49
+
50
+
51
+ class DatabaseAdminTransport(abc.ABC):
52
+ """Abstract transport class for DatabaseAdmin."""
53
+
54
+ AUTH_SCOPES = (
55
+ "https://www.googleapis.com/auth/cloud-platform",
56
+ "https://www.googleapis.com/auth/spanner.admin",
57
+ )
58
+
59
+ DEFAULT_HOST: str = "spanner.googleapis.com"
60
+
61
+ def __init__(
62
+ self,
63
+ *,
64
+ host: str = DEFAULT_HOST,
65
+ credentials: Optional[ga_credentials.Credentials] = None,
66
+ credentials_file: Optional[str] = None,
67
+ scopes: Optional[Sequence[str]] = None,
68
+ quota_project_id: Optional[str] = None,
69
+ client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO,
70
+ always_use_jwt_access: Optional[bool] = False,
71
+ api_audience: Optional[str] = None,
72
+ **kwargs,
73
+ ) -> None:
74
+ """Instantiate the transport.
75
+
76
+ Args:
77
+ host (Optional[str]):
78
+ The hostname to connect to (default: 'spanner.googleapis.com').
79
+ credentials (Optional[google.auth.credentials.Credentials]): The
80
+ authorization credentials to attach to requests. These
81
+ credentials identify the application to the service; if none
82
+ are specified, the client will attempt to ascertain the
83
+ credentials from the environment.
84
+ credentials_file (Optional[str]): A file with credentials that can
85
+ be loaded with :func:`google.auth.load_credentials_from_file`.
86
+ This argument is mutually exclusive with credentials.
87
+ scopes (Optional[Sequence[str]]): A list of scopes.
88
+ quota_project_id (Optional[str]): An optional project to use for billing
89
+ and quota.
90
+ client_info (google.api_core.gapic_v1.client_info.ClientInfo):
91
+ The client info used to send a user-agent string along with
92
+ API requests. If ``None``, then default info will be used.
93
+ Generally, you only need to set this if you're developing
94
+ your own client library.
95
+ always_use_jwt_access (Optional[bool]): Whether self signed JWT should
96
+ be used for service account credentials.
97
+ """
98
+
99
+ scopes_kwargs = {"scopes": scopes, "default_scopes": self.AUTH_SCOPES}
100
+
101
+ # Save the scopes.
102
+ self._scopes = scopes
103
+ if not hasattr(self, "_ignore_credentials"):
104
+ self._ignore_credentials: bool = False
105
+
106
+ # If no credentials are provided, then determine the appropriate
107
+ # defaults.
108
+ if credentials and credentials_file:
109
+ raise core_exceptions.DuplicateCredentialArgs(
110
+ "'credentials_file' and 'credentials' are mutually exclusive"
111
+ )
112
+
113
+ if credentials_file is not None:
114
+ credentials, _ = google.auth.load_credentials_from_file(
115
+ credentials_file, **scopes_kwargs, quota_project_id=quota_project_id
116
+ )
117
+ elif credentials is None and not self._ignore_credentials:
118
+ credentials, _ = google.auth.default(
119
+ **scopes_kwargs, quota_project_id=quota_project_id
120
+ )
121
+ # Don't apply audience if the credentials file passed from user.
122
+ if hasattr(credentials, "with_gdch_audience"):
123
+ credentials = credentials.with_gdch_audience(
124
+ api_audience if api_audience else host
125
+ )
126
+
127
+ # If the credentials are service account credentials, then always try to use self signed JWT.
128
+ if (
129
+ always_use_jwt_access
130
+ and isinstance(credentials, service_account.Credentials)
131
+ and hasattr(service_account.Credentials, "with_always_use_jwt_access")
132
+ ):
133
+ credentials = credentials.with_always_use_jwt_access(True)
134
+
135
+ # Save the credentials.
136
+ self._credentials = credentials
137
+
138
+ # Save the hostname. Default to port 443 (HTTPS) if none is specified.
139
+ if ":" not in host:
140
+ host += ":443"
141
+ self._host = host
142
+
143
+ @property
144
+ def host(self):
145
+ return self._host
146
+
147
+ def _prep_wrapped_messages(self, client_info):
148
+ # Precompute the wrapped methods.
149
+ self._wrapped_methods = {
150
+ self.list_databases: gapic_v1.method.wrap_method(
151
+ self.list_databases,
152
+ default_retry=retries.Retry(
153
+ initial=1.0,
154
+ maximum=32.0,
155
+ multiplier=1.3,
156
+ predicate=retries.if_exception_type(
157
+ core_exceptions.DeadlineExceeded,
158
+ core_exceptions.ServiceUnavailable,
159
+ ),
160
+ deadline=3600.0,
161
+ ),
162
+ default_timeout=3600.0,
163
+ client_info=client_info,
164
+ ),
165
+ self.create_database: gapic_v1.method.wrap_method(
166
+ self.create_database,
167
+ default_timeout=3600.0,
168
+ client_info=client_info,
169
+ ),
170
+ self.get_database: gapic_v1.method.wrap_method(
171
+ self.get_database,
172
+ default_retry=retries.Retry(
173
+ initial=1.0,
174
+ maximum=32.0,
175
+ multiplier=1.3,
176
+ predicate=retries.if_exception_type(
177
+ core_exceptions.DeadlineExceeded,
178
+ core_exceptions.ServiceUnavailable,
179
+ ),
180
+ deadline=3600.0,
181
+ ),
182
+ default_timeout=3600.0,
183
+ client_info=client_info,
184
+ ),
185
+ self.update_database: gapic_v1.method.wrap_method(
186
+ self.update_database,
187
+ default_retry=retries.Retry(
188
+ initial=1.0,
189
+ maximum=32.0,
190
+ multiplier=1.3,
191
+ predicate=retries.if_exception_type(
192
+ core_exceptions.DeadlineExceeded,
193
+ core_exceptions.ServiceUnavailable,
194
+ ),
195
+ deadline=3600.0,
196
+ ),
197
+ default_timeout=3600.0,
198
+ client_info=client_info,
199
+ ),
200
+ self.update_database_ddl: gapic_v1.method.wrap_method(
201
+ self.update_database_ddl,
202
+ default_retry=retries.Retry(
203
+ initial=1.0,
204
+ maximum=32.0,
205
+ multiplier=1.3,
206
+ predicate=retries.if_exception_type(
207
+ core_exceptions.DeadlineExceeded,
208
+ core_exceptions.ServiceUnavailable,
209
+ ),
210
+ deadline=3600.0,
211
+ ),
212
+ default_timeout=3600.0,
213
+ client_info=client_info,
214
+ ),
215
+ self.drop_database: gapic_v1.method.wrap_method(
216
+ self.drop_database,
217
+ default_retry=retries.Retry(
218
+ initial=1.0,
219
+ maximum=32.0,
220
+ multiplier=1.3,
221
+ predicate=retries.if_exception_type(
222
+ core_exceptions.DeadlineExceeded,
223
+ core_exceptions.ServiceUnavailable,
224
+ ),
225
+ deadline=3600.0,
226
+ ),
227
+ default_timeout=3600.0,
228
+ client_info=client_info,
229
+ ),
230
+ self.get_database_ddl: gapic_v1.method.wrap_method(
231
+ self.get_database_ddl,
232
+ default_retry=retries.Retry(
233
+ initial=1.0,
234
+ maximum=32.0,
235
+ multiplier=1.3,
236
+ predicate=retries.if_exception_type(
237
+ core_exceptions.DeadlineExceeded,
238
+ core_exceptions.ServiceUnavailable,
239
+ ),
240
+ deadline=3600.0,
241
+ ),
242
+ default_timeout=3600.0,
243
+ client_info=client_info,
244
+ ),
245
+ self.set_iam_policy: gapic_v1.method.wrap_method(
246
+ self.set_iam_policy,
247
+ default_timeout=30.0,
248
+ client_info=client_info,
249
+ ),
250
+ self.get_iam_policy: gapic_v1.method.wrap_method(
251
+ self.get_iam_policy,
252
+ default_retry=retries.Retry(
253
+ initial=1.0,
254
+ maximum=32.0,
255
+ multiplier=1.3,
256
+ predicate=retries.if_exception_type(
257
+ core_exceptions.DeadlineExceeded,
258
+ core_exceptions.ServiceUnavailable,
259
+ ),
260
+ deadline=30.0,
261
+ ),
262
+ default_timeout=30.0,
263
+ client_info=client_info,
264
+ ),
265
+ self.test_iam_permissions: gapic_v1.method.wrap_method(
266
+ self.test_iam_permissions,
267
+ default_timeout=30.0,
268
+ client_info=client_info,
269
+ ),
270
+ self.create_backup: gapic_v1.method.wrap_method(
271
+ self.create_backup,
272
+ default_timeout=3600.0,
273
+ client_info=client_info,
274
+ ),
275
+ self.copy_backup: gapic_v1.method.wrap_method(
276
+ self.copy_backup,
277
+ default_timeout=3600.0,
278
+ client_info=client_info,
279
+ ),
280
+ self.get_backup: gapic_v1.method.wrap_method(
281
+ self.get_backup,
282
+ default_retry=retries.Retry(
283
+ initial=1.0,
284
+ maximum=32.0,
285
+ multiplier=1.3,
286
+ predicate=retries.if_exception_type(
287
+ core_exceptions.DeadlineExceeded,
288
+ core_exceptions.ServiceUnavailable,
289
+ ),
290
+ deadline=3600.0,
291
+ ),
292
+ default_timeout=3600.0,
293
+ client_info=client_info,
294
+ ),
295
+ self.update_backup: gapic_v1.method.wrap_method(
296
+ self.update_backup,
297
+ default_retry=retries.Retry(
298
+ initial=1.0,
299
+ maximum=32.0,
300
+ multiplier=1.3,
301
+ predicate=retries.if_exception_type(
302
+ core_exceptions.DeadlineExceeded,
303
+ core_exceptions.ServiceUnavailable,
304
+ ),
305
+ deadline=3600.0,
306
+ ),
307
+ default_timeout=3600.0,
308
+ client_info=client_info,
309
+ ),
310
+ self.delete_backup: gapic_v1.method.wrap_method(
311
+ self.delete_backup,
312
+ default_retry=retries.Retry(
313
+ initial=1.0,
314
+ maximum=32.0,
315
+ multiplier=1.3,
316
+ predicate=retries.if_exception_type(
317
+ core_exceptions.DeadlineExceeded,
318
+ core_exceptions.ServiceUnavailable,
319
+ ),
320
+ deadline=3600.0,
321
+ ),
322
+ default_timeout=3600.0,
323
+ client_info=client_info,
324
+ ),
325
+ self.list_backups: gapic_v1.method.wrap_method(
326
+ self.list_backups,
327
+ default_retry=retries.Retry(
328
+ initial=1.0,
329
+ maximum=32.0,
330
+ multiplier=1.3,
331
+ predicate=retries.if_exception_type(
332
+ core_exceptions.DeadlineExceeded,
333
+ core_exceptions.ServiceUnavailable,
334
+ ),
335
+ deadline=3600.0,
336
+ ),
337
+ default_timeout=3600.0,
338
+ client_info=client_info,
339
+ ),
340
+ self.restore_database: gapic_v1.method.wrap_method(
341
+ self.restore_database,
342
+ default_timeout=3600.0,
343
+ client_info=client_info,
344
+ ),
345
+ self.list_database_operations: gapic_v1.method.wrap_method(
346
+ self.list_database_operations,
347
+ default_retry=retries.Retry(
348
+ initial=1.0,
349
+ maximum=32.0,
350
+ multiplier=1.3,
351
+ predicate=retries.if_exception_type(
352
+ core_exceptions.DeadlineExceeded,
353
+ core_exceptions.ServiceUnavailable,
354
+ ),
355
+ deadline=3600.0,
356
+ ),
357
+ default_timeout=3600.0,
358
+ client_info=client_info,
359
+ ),
360
+ self.list_backup_operations: gapic_v1.method.wrap_method(
361
+ self.list_backup_operations,
362
+ default_retry=retries.Retry(
363
+ initial=1.0,
364
+ maximum=32.0,
365
+ multiplier=1.3,
366
+ predicate=retries.if_exception_type(
367
+ core_exceptions.DeadlineExceeded,
368
+ core_exceptions.ServiceUnavailable,
369
+ ),
370
+ deadline=3600.0,
371
+ ),
372
+ default_timeout=3600.0,
373
+ client_info=client_info,
374
+ ),
375
+ self.list_database_roles: gapic_v1.method.wrap_method(
376
+ self.list_database_roles,
377
+ default_retry=retries.Retry(
378
+ initial=1.0,
379
+ maximum=32.0,
380
+ multiplier=1.3,
381
+ predicate=retries.if_exception_type(
382
+ core_exceptions.DeadlineExceeded,
383
+ core_exceptions.ServiceUnavailable,
384
+ ),
385
+ deadline=3600.0,
386
+ ),
387
+ default_timeout=3600.0,
388
+ client_info=client_info,
389
+ ),
390
+ self.add_split_points: gapic_v1.method.wrap_method(
391
+ self.add_split_points,
392
+ default_retry=retries.Retry(
393
+ initial=1.0,
394
+ maximum=32.0,
395
+ multiplier=1.3,
396
+ predicate=retries.if_exception_type(
397
+ core_exceptions.DeadlineExceeded,
398
+ core_exceptions.ServiceUnavailable,
399
+ ),
400
+ deadline=3600.0,
401
+ ),
402
+ default_timeout=3600.0,
403
+ client_info=client_info,
404
+ ),
405
+ self.create_backup_schedule: gapic_v1.method.wrap_method(
406
+ self.create_backup_schedule,
407
+ default_retry=retries.Retry(
408
+ initial=1.0,
409
+ maximum=32.0,
410
+ multiplier=1.3,
411
+ predicate=retries.if_exception_type(
412
+ core_exceptions.DeadlineExceeded,
413
+ core_exceptions.ServiceUnavailable,
414
+ ),
415
+ deadline=3600.0,
416
+ ),
417
+ default_timeout=3600.0,
418
+ client_info=client_info,
419
+ ),
420
+ self.get_backup_schedule: gapic_v1.method.wrap_method(
421
+ self.get_backup_schedule,
422
+ default_retry=retries.Retry(
423
+ initial=1.0,
424
+ maximum=32.0,
425
+ multiplier=1.3,
426
+ predicate=retries.if_exception_type(
427
+ core_exceptions.DeadlineExceeded,
428
+ core_exceptions.ServiceUnavailable,
429
+ ),
430
+ deadline=3600.0,
431
+ ),
432
+ default_timeout=3600.0,
433
+ client_info=client_info,
434
+ ),
435
+ self.update_backup_schedule: gapic_v1.method.wrap_method(
436
+ self.update_backup_schedule,
437
+ default_retry=retries.Retry(
438
+ initial=1.0,
439
+ maximum=32.0,
440
+ multiplier=1.3,
441
+ predicate=retries.if_exception_type(
442
+ core_exceptions.DeadlineExceeded,
443
+ core_exceptions.ServiceUnavailable,
444
+ ),
445
+ deadline=3600.0,
446
+ ),
447
+ default_timeout=3600.0,
448
+ client_info=client_info,
449
+ ),
450
+ self.delete_backup_schedule: gapic_v1.method.wrap_method(
451
+ self.delete_backup_schedule,
452
+ default_retry=retries.Retry(
453
+ initial=1.0,
454
+ maximum=32.0,
455
+ multiplier=1.3,
456
+ predicate=retries.if_exception_type(
457
+ core_exceptions.DeadlineExceeded,
458
+ core_exceptions.ServiceUnavailable,
459
+ ),
460
+ deadline=3600.0,
461
+ ),
462
+ default_timeout=3600.0,
463
+ client_info=client_info,
464
+ ),
465
+ self.list_backup_schedules: gapic_v1.method.wrap_method(
466
+ self.list_backup_schedules,
467
+ default_retry=retries.Retry(
468
+ initial=1.0,
469
+ maximum=32.0,
470
+ multiplier=1.3,
471
+ predicate=retries.if_exception_type(
472
+ core_exceptions.DeadlineExceeded,
473
+ core_exceptions.ServiceUnavailable,
474
+ ),
475
+ deadline=3600.0,
476
+ ),
477
+ default_timeout=3600.0,
478
+ client_info=client_info,
479
+ ),
480
+ self.cancel_operation: gapic_v1.method.wrap_method(
481
+ self.cancel_operation,
482
+ default_timeout=None,
483
+ client_info=client_info,
484
+ ),
485
+ self.delete_operation: gapic_v1.method.wrap_method(
486
+ self.delete_operation,
487
+ default_timeout=None,
488
+ client_info=client_info,
489
+ ),
490
+ self.get_operation: gapic_v1.method.wrap_method(
491
+ self.get_operation,
492
+ default_timeout=None,
493
+ client_info=client_info,
494
+ ),
495
+ self.list_operations: gapic_v1.method.wrap_method(
496
+ self.list_operations,
497
+ default_timeout=None,
498
+ client_info=client_info,
499
+ ),
500
+ }
501
+
502
+ def close(self):
503
+ """Closes resources associated with the transport.
504
+
505
+ .. warning::
506
+ Only call this method if the transport is NOT shared
507
+ with other clients - this may cause errors in other clients!
508
+ """
509
+ raise NotImplementedError()
510
+
511
+ @property
512
+ def operations_client(self):
513
+ """Return the client designed to process long-running operations."""
514
+ raise NotImplementedError()
515
+
516
+ @property
517
+ def list_databases(
518
+ self,
519
+ ) -> Callable[
520
+ [spanner_database_admin.ListDatabasesRequest],
521
+ Union[
522
+ spanner_database_admin.ListDatabasesResponse,
523
+ Awaitable[spanner_database_admin.ListDatabasesResponse],
524
+ ],
525
+ ]:
526
+ raise NotImplementedError()
527
+
528
+ @property
529
+ def create_database(
530
+ self,
531
+ ) -> Callable[
532
+ [spanner_database_admin.CreateDatabaseRequest],
533
+ Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]],
534
+ ]:
535
+ raise NotImplementedError()
536
+
537
+ @property
538
+ def get_database(
539
+ self,
540
+ ) -> Callable[
541
+ [spanner_database_admin.GetDatabaseRequest],
542
+ Union[
543
+ spanner_database_admin.Database, Awaitable[spanner_database_admin.Database]
544
+ ],
545
+ ]:
546
+ raise NotImplementedError()
547
+
548
+ @property
549
+ def update_database(
550
+ self,
551
+ ) -> Callable[
552
+ [spanner_database_admin.UpdateDatabaseRequest],
553
+ Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]],
554
+ ]:
555
+ raise NotImplementedError()
556
+
557
+ @property
558
+ def update_database_ddl(
559
+ self,
560
+ ) -> Callable[
561
+ [spanner_database_admin.UpdateDatabaseDdlRequest],
562
+ Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]],
563
+ ]:
564
+ raise NotImplementedError()
565
+
566
+ @property
567
+ def drop_database(
568
+ self,
569
+ ) -> Callable[
570
+ [spanner_database_admin.DropDatabaseRequest],
571
+ Union[empty_pb2.Empty, Awaitable[empty_pb2.Empty]],
572
+ ]:
573
+ raise NotImplementedError()
574
+
575
+ @property
576
+ def get_database_ddl(
577
+ self,
578
+ ) -> Callable[
579
+ [spanner_database_admin.GetDatabaseDdlRequest],
580
+ Union[
581
+ spanner_database_admin.GetDatabaseDdlResponse,
582
+ Awaitable[spanner_database_admin.GetDatabaseDdlResponse],
583
+ ],
584
+ ]:
585
+ raise NotImplementedError()
586
+
587
+ @property
588
+ def set_iam_policy(
589
+ self,
590
+ ) -> Callable[
591
+ [iam_policy_pb2.SetIamPolicyRequest],
592
+ Union[policy_pb2.Policy, Awaitable[policy_pb2.Policy]],
593
+ ]:
594
+ raise NotImplementedError()
595
+
596
+ @property
597
+ def get_iam_policy(
598
+ self,
599
+ ) -> Callable[
600
+ [iam_policy_pb2.GetIamPolicyRequest],
601
+ Union[policy_pb2.Policy, Awaitable[policy_pb2.Policy]],
602
+ ]:
603
+ raise NotImplementedError()
604
+
605
+ @property
606
+ def test_iam_permissions(
607
+ self,
608
+ ) -> Callable[
609
+ [iam_policy_pb2.TestIamPermissionsRequest],
610
+ Union[
611
+ iam_policy_pb2.TestIamPermissionsResponse,
612
+ Awaitable[iam_policy_pb2.TestIamPermissionsResponse],
613
+ ],
614
+ ]:
615
+ raise NotImplementedError()
616
+
617
+ @property
618
+ def create_backup(
619
+ self,
620
+ ) -> Callable[
621
+ [gsad_backup.CreateBackupRequest],
622
+ Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]],
623
+ ]:
624
+ raise NotImplementedError()
625
+
626
+ @property
627
+ def copy_backup(
628
+ self,
629
+ ) -> Callable[
630
+ [backup.CopyBackupRequest],
631
+ Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]],
632
+ ]:
633
+ raise NotImplementedError()
634
+
635
+ @property
636
+ def get_backup(
637
+ self,
638
+ ) -> Callable[
639
+ [backup.GetBackupRequest], Union[backup.Backup, Awaitable[backup.Backup]]
640
+ ]:
641
+ raise NotImplementedError()
642
+
643
+ @property
644
+ def update_backup(
645
+ self,
646
+ ) -> Callable[
647
+ [gsad_backup.UpdateBackupRequest],
648
+ Union[gsad_backup.Backup, Awaitable[gsad_backup.Backup]],
649
+ ]:
650
+ raise NotImplementedError()
651
+
652
+ @property
653
+ def delete_backup(
654
+ self,
655
+ ) -> Callable[
656
+ [backup.DeleteBackupRequest], Union[empty_pb2.Empty, Awaitable[empty_pb2.Empty]]
657
+ ]:
658
+ raise NotImplementedError()
659
+
660
+ @property
661
+ def list_backups(
662
+ self,
663
+ ) -> Callable[
664
+ [backup.ListBackupsRequest],
665
+ Union[backup.ListBackupsResponse, Awaitable[backup.ListBackupsResponse]],
666
+ ]:
667
+ raise NotImplementedError()
668
+
669
+ @property
670
+ def restore_database(
671
+ self,
672
+ ) -> Callable[
673
+ [spanner_database_admin.RestoreDatabaseRequest],
674
+ Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]],
675
+ ]:
676
+ raise NotImplementedError()
677
+
678
+ @property
679
+ def list_database_operations(
680
+ self,
681
+ ) -> Callable[
682
+ [spanner_database_admin.ListDatabaseOperationsRequest],
683
+ Union[
684
+ spanner_database_admin.ListDatabaseOperationsResponse,
685
+ Awaitable[spanner_database_admin.ListDatabaseOperationsResponse],
686
+ ],
687
+ ]:
688
+ raise NotImplementedError()
689
+
690
+ @property
691
+ def list_backup_operations(
692
+ self,
693
+ ) -> Callable[
694
+ [backup.ListBackupOperationsRequest],
695
+ Union[
696
+ backup.ListBackupOperationsResponse,
697
+ Awaitable[backup.ListBackupOperationsResponse],
698
+ ],
699
+ ]:
700
+ raise NotImplementedError()
701
+
702
+ @property
703
+ def list_database_roles(
704
+ self,
705
+ ) -> Callable[
706
+ [spanner_database_admin.ListDatabaseRolesRequest],
707
+ Union[
708
+ spanner_database_admin.ListDatabaseRolesResponse,
709
+ Awaitable[spanner_database_admin.ListDatabaseRolesResponse],
710
+ ],
711
+ ]:
712
+ raise NotImplementedError()
713
+
714
+ @property
715
+ def add_split_points(
716
+ self,
717
+ ) -> Callable[
718
+ [spanner_database_admin.AddSplitPointsRequest],
719
+ Union[
720
+ spanner_database_admin.AddSplitPointsResponse,
721
+ Awaitable[spanner_database_admin.AddSplitPointsResponse],
722
+ ],
723
+ ]:
724
+ raise NotImplementedError()
725
+
726
+ @property
727
+ def create_backup_schedule(
728
+ self,
729
+ ) -> Callable[
730
+ [gsad_backup_schedule.CreateBackupScheduleRequest],
731
+ Union[
732
+ gsad_backup_schedule.BackupSchedule,
733
+ Awaitable[gsad_backup_schedule.BackupSchedule],
734
+ ],
735
+ ]:
736
+ raise NotImplementedError()
737
+
738
+ @property
739
+ def get_backup_schedule(
740
+ self,
741
+ ) -> Callable[
742
+ [backup_schedule.GetBackupScheduleRequest],
743
+ Union[
744
+ backup_schedule.BackupSchedule, Awaitable[backup_schedule.BackupSchedule]
745
+ ],
746
+ ]:
747
+ raise NotImplementedError()
748
+
749
+ @property
750
+ def update_backup_schedule(
751
+ self,
752
+ ) -> Callable[
753
+ [gsad_backup_schedule.UpdateBackupScheduleRequest],
754
+ Union[
755
+ gsad_backup_schedule.BackupSchedule,
756
+ Awaitable[gsad_backup_schedule.BackupSchedule],
757
+ ],
758
+ ]:
759
+ raise NotImplementedError()
760
+
761
+ @property
762
+ def delete_backup_schedule(
763
+ self,
764
+ ) -> Callable[
765
+ [backup_schedule.DeleteBackupScheduleRequest],
766
+ Union[empty_pb2.Empty, Awaitable[empty_pb2.Empty]],
767
+ ]:
768
+ raise NotImplementedError()
769
+
770
+ @property
771
+ def list_backup_schedules(
772
+ self,
773
+ ) -> Callable[
774
+ [backup_schedule.ListBackupSchedulesRequest],
775
+ Union[
776
+ backup_schedule.ListBackupSchedulesResponse,
777
+ Awaitable[backup_schedule.ListBackupSchedulesResponse],
778
+ ],
779
+ ]:
780
+ raise NotImplementedError()
781
+
782
+ @property
783
+ def list_operations(
784
+ self,
785
+ ) -> Callable[
786
+ [operations_pb2.ListOperationsRequest],
787
+ Union[
788
+ operations_pb2.ListOperationsResponse,
789
+ Awaitable[operations_pb2.ListOperationsResponse],
790
+ ],
791
+ ]:
792
+ raise NotImplementedError()
793
+
794
+ @property
795
+ def get_operation(
796
+ self,
797
+ ) -> Callable[
798
+ [operations_pb2.GetOperationRequest],
799
+ Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]],
800
+ ]:
801
+ raise NotImplementedError()
802
+
803
+ @property
804
+ def cancel_operation(
805
+ self,
806
+ ) -> Callable[[operations_pb2.CancelOperationRequest], None,]:
807
+ raise NotImplementedError()
808
+
809
+ @property
810
+ def delete_operation(
811
+ self,
812
+ ) -> Callable[[operations_pb2.DeleteOperationRequest], None,]:
813
+ raise NotImplementedError()
814
+
815
+ @property
816
+ def kind(self) -> str:
817
+ raise NotImplementedError()
818
+
819
+
820
+ __all__ = ("DatabaseAdminTransport",)