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.
- google/cloud/spanner.py +47 -0
- google/cloud/spanner_admin_database_v1/__init__.py +146 -0
- google/cloud/spanner_admin_database_v1/gapic_metadata.json +418 -0
- google/cloud/spanner_admin_database_v1/gapic_version.py +16 -0
- google/cloud/spanner_admin_database_v1/py.typed +2 -0
- google/cloud/spanner_admin_database_v1/services/__init__.py +15 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/__init__.py +22 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/async_client.py +4097 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/client.py +4602 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/pagers.py +989 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/transports/__init__.py +38 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/transports/base.py +820 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/transports/grpc.py +1303 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/transports/grpc_asyncio.py +1688 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/transports/rest.py +6512 -0
- google/cloud/spanner_admin_database_v1/services/database_admin/transports/rest_base.py +1650 -0
- google/cloud/spanner_admin_database_v1/types/__init__.py +144 -0
- google/cloud/spanner_admin_database_v1/types/backup.py +1106 -0
- google/cloud/spanner_admin_database_v1/types/backup_schedule.py +369 -0
- google/cloud/spanner_admin_database_v1/types/common.py +180 -0
- google/cloud/spanner_admin_database_v1/types/spanner_database_admin.py +1303 -0
- google/cloud/spanner_admin_instance_v1/__init__.py +110 -0
- google/cloud/spanner_admin_instance_v1/gapic_metadata.json +343 -0
- google/cloud/spanner_admin_instance_v1/gapic_version.py +16 -0
- google/cloud/spanner_admin_instance_v1/py.typed +2 -0
- google/cloud/spanner_admin_instance_v1/services/__init__.py +15 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/__init__.py +22 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/async_client.py +3466 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/client.py +3881 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/pagers.py +856 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/__init__.py +38 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/base.py +545 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/grpc.py +1347 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/grpc_asyncio.py +1539 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/rest.py +4834 -0
- google/cloud/spanner_admin_instance_v1/services/instance_admin/transports/rest_base.py +1198 -0
- google/cloud/spanner_admin_instance_v1/types/__init__.py +104 -0
- google/cloud/spanner_admin_instance_v1/types/common.py +99 -0
- google/cloud/spanner_admin_instance_v1/types/spanner_instance_admin.py +2375 -0
- google/cloud/spanner_dbapi/__init__.py +93 -0
- google/cloud/spanner_dbapi/_helpers.py +113 -0
- google/cloud/spanner_dbapi/batch_dml_executor.py +135 -0
- google/cloud/spanner_dbapi/checksum.py +80 -0
- google/cloud/spanner_dbapi/client_side_statement_executor.py +140 -0
- google/cloud/spanner_dbapi/client_side_statement_parser.py +106 -0
- google/cloud/spanner_dbapi/connection.py +818 -0
- google/cloud/spanner_dbapi/cursor.py +609 -0
- google/cloud/spanner_dbapi/exceptions.py +172 -0
- google/cloud/spanner_dbapi/parse_utils.py +392 -0
- google/cloud/spanner_dbapi/parsed_statement.py +63 -0
- google/cloud/spanner_dbapi/parser.py +258 -0
- google/cloud/spanner_dbapi/partition_helper.py +41 -0
- google/cloud/spanner_dbapi/transaction_helper.py +294 -0
- google/cloud/spanner_dbapi/types.py +106 -0
- google/cloud/spanner_dbapi/utils.py +147 -0
- google/cloud/spanner_dbapi/version.py +20 -0
- google/cloud/spanner_v1/__init__.py +154 -0
- google/cloud/spanner_v1/_helpers.py +751 -0
- google/cloud/spanner_v1/_opentelemetry_tracing.py +165 -0
- google/cloud/spanner_v1/backup.py +397 -0
- google/cloud/spanner_v1/batch.py +433 -0
- google/cloud/spanner_v1/client.py +538 -0
- google/cloud/spanner_v1/data_types.py +350 -0
- google/cloud/spanner_v1/database.py +1968 -0
- google/cloud/spanner_v1/database_sessions_manager.py +249 -0
- google/cloud/spanner_v1/gapic_metadata.json +268 -0
- google/cloud/spanner_v1/gapic_version.py +16 -0
- google/cloud/spanner_v1/instance.py +735 -0
- google/cloud/spanner_v1/keyset.py +193 -0
- google/cloud/spanner_v1/merged_result_set.py +146 -0
- google/cloud/spanner_v1/metrics/constants.py +71 -0
- google/cloud/spanner_v1/metrics/metrics_capture.py +75 -0
- google/cloud/spanner_v1/metrics/metrics_exporter.py +384 -0
- google/cloud/spanner_v1/metrics/metrics_interceptor.py +156 -0
- google/cloud/spanner_v1/metrics/metrics_tracer.py +588 -0
- google/cloud/spanner_v1/metrics/metrics_tracer_factory.py +328 -0
- google/cloud/spanner_v1/metrics/spanner_metrics_tracer_factory.py +172 -0
- google/cloud/spanner_v1/param_types.py +110 -0
- google/cloud/spanner_v1/pool.py +813 -0
- google/cloud/spanner_v1/py.typed +2 -0
- google/cloud/spanner_v1/request_id_header.py +64 -0
- google/cloud/spanner_v1/services/__init__.py +15 -0
- google/cloud/spanner_v1/services/spanner/__init__.py +22 -0
- google/cloud/spanner_v1/services/spanner/async_client.py +2205 -0
- google/cloud/spanner_v1/services/spanner/client.py +2624 -0
- google/cloud/spanner_v1/services/spanner/pagers.py +196 -0
- google/cloud/spanner_v1/services/spanner/transports/__init__.py +38 -0
- google/cloud/spanner_v1/services/spanner/transports/base.py +520 -0
- google/cloud/spanner_v1/services/spanner/transports/grpc.py +911 -0
- google/cloud/spanner_v1/services/spanner/transports/grpc_asyncio.py +1144 -0
- google/cloud/spanner_v1/services/spanner/transports/rest.py +3468 -0
- google/cloud/spanner_v1/services/spanner/transports/rest_base.py +981 -0
- google/cloud/spanner_v1/session.py +631 -0
- google/cloud/spanner_v1/session_options.py +133 -0
- google/cloud/spanner_v1/snapshot.py +1057 -0
- google/cloud/spanner_v1/streamed.py +402 -0
- google/cloud/spanner_v1/table.py +181 -0
- google/cloud/spanner_v1/testing/__init__.py +0 -0
- google/cloud/spanner_v1/testing/database_test.py +121 -0
- google/cloud/spanner_v1/testing/interceptors.py +118 -0
- google/cloud/spanner_v1/testing/mock_database_admin.py +38 -0
- google/cloud/spanner_v1/testing/mock_spanner.py +261 -0
- google/cloud/spanner_v1/testing/spanner_database_admin_pb2_grpc.py +1267 -0
- google/cloud/spanner_v1/testing/spanner_pb2_grpc.py +882 -0
- google/cloud/spanner_v1/transaction.py +747 -0
- google/cloud/spanner_v1/types/__init__.py +118 -0
- google/cloud/spanner_v1/types/commit_response.py +94 -0
- google/cloud/spanner_v1/types/keys.py +248 -0
- google/cloud/spanner_v1/types/mutation.py +201 -0
- google/cloud/spanner_v1/types/query_plan.py +220 -0
- google/cloud/spanner_v1/types/result_set.py +379 -0
- google/cloud/spanner_v1/types/spanner.py +1815 -0
- google/cloud/spanner_v1/types/transaction.py +818 -0
- google/cloud/spanner_v1/types/type.py +288 -0
- google_cloud_spanner-3.55.0.dist-info/LICENSE +202 -0
- google_cloud_spanner-3.55.0.dist-info/METADATA +318 -0
- google_cloud_spanner-3.55.0.dist-info/RECORD +119 -0
- google_cloud_spanner-3.55.0.dist-info/WHEEL +5 -0
- google_cloud_spanner-3.55.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,196 @@
|
|
|
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
|
+
from google.api_core import gapic_v1
|
|
17
|
+
from google.api_core import retry as retries
|
|
18
|
+
from google.api_core import retry_async as retries_async
|
|
19
|
+
from typing import (
|
|
20
|
+
Any,
|
|
21
|
+
AsyncIterator,
|
|
22
|
+
Awaitable,
|
|
23
|
+
Callable,
|
|
24
|
+
Sequence,
|
|
25
|
+
Tuple,
|
|
26
|
+
Optional,
|
|
27
|
+
Iterator,
|
|
28
|
+
Union,
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
try:
|
|
32
|
+
OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault, None]
|
|
33
|
+
OptionalAsyncRetry = Union[
|
|
34
|
+
retries_async.AsyncRetry, gapic_v1.method._MethodDefault, None
|
|
35
|
+
]
|
|
36
|
+
except AttributeError: # pragma: NO COVER
|
|
37
|
+
OptionalRetry = Union[retries.Retry, object, None] # type: ignore
|
|
38
|
+
OptionalAsyncRetry = Union[retries_async.AsyncRetry, object, None] # type: ignore
|
|
39
|
+
|
|
40
|
+
from google.cloud.spanner_v1.types import spanner
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
class ListSessionsPager:
|
|
44
|
+
"""A pager for iterating through ``list_sessions`` requests.
|
|
45
|
+
|
|
46
|
+
This class thinly wraps an initial
|
|
47
|
+
:class:`google.cloud.spanner_v1.types.ListSessionsResponse` object, and
|
|
48
|
+
provides an ``__iter__`` method to iterate through its
|
|
49
|
+
``sessions`` field.
|
|
50
|
+
|
|
51
|
+
If there are more pages, the ``__iter__`` method will make additional
|
|
52
|
+
``ListSessions`` requests and continue to iterate
|
|
53
|
+
through the ``sessions`` field on the
|
|
54
|
+
corresponding responses.
|
|
55
|
+
|
|
56
|
+
All the usual :class:`google.cloud.spanner_v1.types.ListSessionsResponse`
|
|
57
|
+
attributes are available on the pager. If multiple requests are made, only
|
|
58
|
+
the most recent response is retained, and thus used for attribute lookup.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
def __init__(
|
|
62
|
+
self,
|
|
63
|
+
method: Callable[..., spanner.ListSessionsResponse],
|
|
64
|
+
request: spanner.ListSessionsRequest,
|
|
65
|
+
response: spanner.ListSessionsResponse,
|
|
66
|
+
*,
|
|
67
|
+
retry: OptionalRetry = gapic_v1.method.DEFAULT,
|
|
68
|
+
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
|
|
69
|
+
metadata: Sequence[Tuple[str, Union[str, bytes]]] = ()
|
|
70
|
+
):
|
|
71
|
+
"""Instantiate the pager.
|
|
72
|
+
|
|
73
|
+
Args:
|
|
74
|
+
method (Callable): The method that was originally called, and
|
|
75
|
+
which instantiated this pager.
|
|
76
|
+
request (google.cloud.spanner_v1.types.ListSessionsRequest):
|
|
77
|
+
The initial request object.
|
|
78
|
+
response (google.cloud.spanner_v1.types.ListSessionsResponse):
|
|
79
|
+
The initial response object.
|
|
80
|
+
retry (google.api_core.retry.Retry): Designation of what errors,
|
|
81
|
+
if any, should be retried.
|
|
82
|
+
timeout (float): The timeout for this request.
|
|
83
|
+
metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be
|
|
84
|
+
sent along with the request as metadata. Normally, each value must be of type `str`,
|
|
85
|
+
but for metadata keys ending with the suffix `-bin`, the corresponding values must
|
|
86
|
+
be of type `bytes`.
|
|
87
|
+
"""
|
|
88
|
+
self._method = method
|
|
89
|
+
self._request = spanner.ListSessionsRequest(request)
|
|
90
|
+
self._response = response
|
|
91
|
+
self._retry = retry
|
|
92
|
+
self._timeout = timeout
|
|
93
|
+
self._metadata = metadata
|
|
94
|
+
|
|
95
|
+
def __getattr__(self, name: str) -> Any:
|
|
96
|
+
return getattr(self._response, name)
|
|
97
|
+
|
|
98
|
+
@property
|
|
99
|
+
def pages(self) -> Iterator[spanner.ListSessionsResponse]:
|
|
100
|
+
yield self._response
|
|
101
|
+
while self._response.next_page_token:
|
|
102
|
+
self._request.page_token = self._response.next_page_token
|
|
103
|
+
self._response = self._method(
|
|
104
|
+
self._request,
|
|
105
|
+
retry=self._retry,
|
|
106
|
+
timeout=self._timeout,
|
|
107
|
+
metadata=self._metadata,
|
|
108
|
+
)
|
|
109
|
+
yield self._response
|
|
110
|
+
|
|
111
|
+
def __iter__(self) -> Iterator[spanner.Session]:
|
|
112
|
+
for page in self.pages:
|
|
113
|
+
yield from page.sessions
|
|
114
|
+
|
|
115
|
+
def __repr__(self) -> str:
|
|
116
|
+
return "{0}<{1!r}>".format(self.__class__.__name__, self._response)
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
class ListSessionsAsyncPager:
|
|
120
|
+
"""A pager for iterating through ``list_sessions`` requests.
|
|
121
|
+
|
|
122
|
+
This class thinly wraps an initial
|
|
123
|
+
:class:`google.cloud.spanner_v1.types.ListSessionsResponse` object, and
|
|
124
|
+
provides an ``__aiter__`` method to iterate through its
|
|
125
|
+
``sessions`` field.
|
|
126
|
+
|
|
127
|
+
If there are more pages, the ``__aiter__`` method will make additional
|
|
128
|
+
``ListSessions`` requests and continue to iterate
|
|
129
|
+
through the ``sessions`` field on the
|
|
130
|
+
corresponding responses.
|
|
131
|
+
|
|
132
|
+
All the usual :class:`google.cloud.spanner_v1.types.ListSessionsResponse`
|
|
133
|
+
attributes are available on the pager. If multiple requests are made, only
|
|
134
|
+
the most recent response is retained, and thus used for attribute lookup.
|
|
135
|
+
"""
|
|
136
|
+
|
|
137
|
+
def __init__(
|
|
138
|
+
self,
|
|
139
|
+
method: Callable[..., Awaitable[spanner.ListSessionsResponse]],
|
|
140
|
+
request: spanner.ListSessionsRequest,
|
|
141
|
+
response: spanner.ListSessionsResponse,
|
|
142
|
+
*,
|
|
143
|
+
retry: OptionalAsyncRetry = gapic_v1.method.DEFAULT,
|
|
144
|
+
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
|
|
145
|
+
metadata: Sequence[Tuple[str, Union[str, bytes]]] = ()
|
|
146
|
+
):
|
|
147
|
+
"""Instantiates the pager.
|
|
148
|
+
|
|
149
|
+
Args:
|
|
150
|
+
method (Callable): The method that was originally called, and
|
|
151
|
+
which instantiated this pager.
|
|
152
|
+
request (google.cloud.spanner_v1.types.ListSessionsRequest):
|
|
153
|
+
The initial request object.
|
|
154
|
+
response (google.cloud.spanner_v1.types.ListSessionsResponse):
|
|
155
|
+
The initial response object.
|
|
156
|
+
retry (google.api_core.retry.AsyncRetry): Designation of what errors,
|
|
157
|
+
if any, should be retried.
|
|
158
|
+
timeout (float): The timeout for this request.
|
|
159
|
+
metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be
|
|
160
|
+
sent along with the request as metadata. Normally, each value must be of type `str`,
|
|
161
|
+
but for metadata keys ending with the suffix `-bin`, the corresponding values must
|
|
162
|
+
be of type `bytes`.
|
|
163
|
+
"""
|
|
164
|
+
self._method = method
|
|
165
|
+
self._request = spanner.ListSessionsRequest(request)
|
|
166
|
+
self._response = response
|
|
167
|
+
self._retry = retry
|
|
168
|
+
self._timeout = timeout
|
|
169
|
+
self._metadata = metadata
|
|
170
|
+
|
|
171
|
+
def __getattr__(self, name: str) -> Any:
|
|
172
|
+
return getattr(self._response, name)
|
|
173
|
+
|
|
174
|
+
@property
|
|
175
|
+
async def pages(self) -> AsyncIterator[spanner.ListSessionsResponse]:
|
|
176
|
+
yield self._response
|
|
177
|
+
while self._response.next_page_token:
|
|
178
|
+
self._request.page_token = self._response.next_page_token
|
|
179
|
+
self._response = await self._method(
|
|
180
|
+
self._request,
|
|
181
|
+
retry=self._retry,
|
|
182
|
+
timeout=self._timeout,
|
|
183
|
+
metadata=self._metadata,
|
|
184
|
+
)
|
|
185
|
+
yield self._response
|
|
186
|
+
|
|
187
|
+
def __aiter__(self) -> AsyncIterator[spanner.Session]:
|
|
188
|
+
async def async_generator():
|
|
189
|
+
async for page in self.pages:
|
|
190
|
+
for response in page.sessions:
|
|
191
|
+
yield response
|
|
192
|
+
|
|
193
|
+
return async_generator()
|
|
194
|
+
|
|
195
|
+
def __repr__(self) -> str:
|
|
196
|
+
return "{0}<{1!r}>".format(self.__class__.__name__, self._response)
|
|
@@ -0,0 +1,38 @@
|
|
|
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
|
+
from collections import OrderedDict
|
|
17
|
+
from typing import Dict, Type
|
|
18
|
+
|
|
19
|
+
from .base import SpannerTransport
|
|
20
|
+
from .grpc import SpannerGrpcTransport
|
|
21
|
+
from .grpc_asyncio import SpannerGrpcAsyncIOTransport
|
|
22
|
+
from .rest import SpannerRestTransport
|
|
23
|
+
from .rest import SpannerRestInterceptor
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
# Compile a registry of transports.
|
|
27
|
+
_transport_registry = OrderedDict() # type: Dict[str, Type[SpannerTransport]]
|
|
28
|
+
_transport_registry["grpc"] = SpannerGrpcTransport
|
|
29
|
+
_transport_registry["grpc_asyncio"] = SpannerGrpcAsyncIOTransport
|
|
30
|
+
_transport_registry["rest"] = SpannerRestTransport
|
|
31
|
+
|
|
32
|
+
__all__ = (
|
|
33
|
+
"SpannerTransport",
|
|
34
|
+
"SpannerGrpcTransport",
|
|
35
|
+
"SpannerGrpcAsyncIOTransport",
|
|
36
|
+
"SpannerRestTransport",
|
|
37
|
+
"SpannerRestInterceptor",
|
|
38
|
+
)
|