otdf-python 0.4.1__py3-none-any.whl → 0.4.3__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.
- otdf_python/autoconfigure_utils.py +0 -2
- otdf_python/cli.py +50 -21
- otdf_python/collection_store.py +0 -1
- otdf_python/ecdh.py +0 -6
- otdf_python/kas_allowlist.py +182 -0
- otdf_python/kas_client.py +44 -2
- otdf_python/kas_connect_rpc_client.py +59 -19
- otdf_python/nanotdf.py +4 -14
- otdf_python/nanotdf_ecdsa_struct.py +0 -2
- otdf_python/nanotdf_type.py +1 -1
- otdf_python/sdk.py +31 -15
- otdf_python/sdk_builder.py +88 -8
- otdf_python/tdf.py +2 -2
- {otdf_python-0.4.1.dist-info → otdf_python-0.4.3.dist-info}/METADATA +3 -2
- {otdf_python-0.4.1.dist-info → otdf_python-0.4.3.dist-info}/RECORD +46 -36
- otdf_python_proto/__init__.py +2 -6
- otdf_python_proto/authorization/__init__.py +10 -0
- otdf_python_proto/authorization/authorization_connect.py +250 -0
- otdf_python_proto/authorization/v2/authorization_connect.py +315 -0
- otdf_python_proto/entityresolution/__init__.py +10 -0
- otdf_python_proto/entityresolution/entity_resolution_connect.py +185 -0
- otdf_python_proto/entityresolution/v2/entity_resolution_connect.py +185 -0
- otdf_python_proto/kas/__init__.py +2 -2
- otdf_python_proto/kas/kas_connect.py +259 -0
- otdf_python_proto/policy/actions/__init__.py +11 -0
- otdf_python_proto/policy/actions/actions_connect.py +380 -0
- otdf_python_proto/policy/attributes/__init__.py +11 -0
- otdf_python_proto/policy/attributes/attributes_connect.py +1310 -0
- otdf_python_proto/policy/kasregistry/__init__.py +11 -0
- otdf_python_proto/policy/kasregistry/key_access_server_registry_connect.py +912 -0
- otdf_python_proto/policy/keymanagement/__init__.py +11 -0
- otdf_python_proto/policy/keymanagement/key_management_connect.py +380 -0
- otdf_python_proto/policy/namespaces/__init__.py +11 -0
- otdf_python_proto/policy/namespaces/namespaces_connect.py +648 -0
- otdf_python_proto/policy/registeredresources/__init__.py +11 -0
- otdf_python_proto/policy/registeredresources/registered_resources_connect.py +770 -0
- otdf_python_proto/policy/resourcemapping/__init__.py +11 -0
- otdf_python_proto/policy/resourcemapping/resource_mapping_connect.py +790 -0
- otdf_python_proto/policy/subjectmapping/__init__.py +11 -0
- otdf_python_proto/policy/subjectmapping/subject_mapping_connect.py +851 -0
- otdf_python_proto/policy/unsafe/__init__.py +11 -0
- otdf_python_proto/policy/unsafe/unsafe_connect.py +705 -0
- otdf_python_proto/wellknownconfiguration/__init__.py +10 -0
- otdf_python_proto/wellknownconfiguration/wellknown_configuration_connect.py +124 -0
- otdf_python_proto/authorization/authorization_pb2_connect.py +0 -191
- otdf_python_proto/authorization/v2/authorization_pb2_connect.py +0 -233
- otdf_python_proto/entityresolution/entity_resolution_pb2_connect.py +0 -149
- otdf_python_proto/entityresolution/v2/entity_resolution_pb2_connect.py +0 -149
- otdf_python_proto/kas/kas_pb2_connect.py +0 -192
- otdf_python_proto/policy/actions/actions_pb2_connect.py +0 -275
- otdf_python_proto/policy/attributes/attributes_pb2_connect.py +0 -863
- otdf_python_proto/policy/kasregistry/key_access_server_registry_pb2_connect.py +0 -611
- otdf_python_proto/policy/keymanagement/key_management_pb2_connect.py +0 -275
- otdf_python_proto/policy/namespaces/namespaces_pb2_connect.py +0 -443
- otdf_python_proto/policy/registeredresources/registered_resources_pb2_connect.py +0 -527
- otdf_python_proto/policy/resourcemapping/resource_mapping_pb2_connect.py +0 -527
- otdf_python_proto/policy/subjectmapping/subject_mapping_pb2_connect.py +0 -569
- otdf_python_proto/policy/unsafe/unsafe_pb2_connect.py +0 -485
- otdf_python_proto/wellknownconfiguration/wellknown_configuration_pb2_connect.py +0 -107
- {otdf_python-0.4.1.dist-info → otdf_python-0.4.3.dist-info}/WHEEL +0 -0
- {otdf_python-0.4.1.dist-info → otdf_python-0.4.3.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
# Generated Connect client code
|
|
2
|
-
|
|
3
|
-
from __future__ import annotations
|
|
4
|
-
from collections.abc import AsyncIterator
|
|
5
|
-
from collections.abc import Iterator
|
|
6
|
-
from collections.abc import Iterable
|
|
7
|
-
import aiohttp
|
|
8
|
-
import urllib3
|
|
9
|
-
import typing
|
|
10
|
-
import sys
|
|
11
|
-
|
|
12
|
-
from connectrpc.client_async import AsyncConnectClient
|
|
13
|
-
from connectrpc.client_sync import ConnectClient
|
|
14
|
-
from connectrpc.client_protocol import ConnectProtocol
|
|
15
|
-
from connectrpc.client_connect import ConnectProtocolError
|
|
16
|
-
from connectrpc.headers import HeaderInput
|
|
17
|
-
from connectrpc.server import ClientRequest
|
|
18
|
-
from connectrpc.server import ClientStream
|
|
19
|
-
from connectrpc.server import ServerResponse
|
|
20
|
-
from connectrpc.server import ServerStream
|
|
21
|
-
from connectrpc.server_sync import ConnectWSGI
|
|
22
|
-
from connectrpc.streams import StreamInput
|
|
23
|
-
from connectrpc.streams import AsyncStreamOutput
|
|
24
|
-
from connectrpc.streams import StreamOutput
|
|
25
|
-
from connectrpc.unary import UnaryOutput
|
|
26
|
-
from connectrpc.unary import ClientStreamingOutput
|
|
27
|
-
|
|
28
|
-
if typing.TYPE_CHECKING:
|
|
29
|
-
# wsgiref.types was added in Python 3.11.
|
|
30
|
-
if sys.version_info >= (3, 11):
|
|
31
|
-
from wsgiref.types import WSGIApplication
|
|
32
|
-
else:
|
|
33
|
-
from _typeshed.wsgi import WSGIApplication
|
|
34
|
-
|
|
35
|
-
import entityresolution.entity_resolution_pb2
|
|
36
|
-
|
|
37
|
-
class EntityResolutionServiceClient:
|
|
38
|
-
def __init__(
|
|
39
|
-
self,
|
|
40
|
-
base_url: str,
|
|
41
|
-
http_client: urllib3.PoolManager | None = None,
|
|
42
|
-
protocol: ConnectProtocol = ConnectProtocol.CONNECT_PROTOBUF,
|
|
43
|
-
):
|
|
44
|
-
self.base_url = base_url
|
|
45
|
-
self._connect_client = ConnectClient(http_client, protocol)
|
|
46
|
-
def call_resolve_entities(
|
|
47
|
-
self, req: entityresolution.entity_resolution_pb2.ResolveEntitiesRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
48
|
-
) -> UnaryOutput[entityresolution.entity_resolution_pb2.ResolveEntitiesResponse]:
|
|
49
|
-
"""Low-level method to call ResolveEntities, granting access to errors and metadata"""
|
|
50
|
-
url = self.base_url + "/entityresolution.EntityResolutionService/ResolveEntities"
|
|
51
|
-
return self._connect_client.call_unary(url, req, entityresolution.entity_resolution_pb2.ResolveEntitiesResponse,extra_headers, timeout_seconds)
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
def resolve_entities(
|
|
55
|
-
self, req: entityresolution.entity_resolution_pb2.ResolveEntitiesRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
56
|
-
) -> entityresolution.entity_resolution_pb2.ResolveEntitiesResponse:
|
|
57
|
-
response = self.call_resolve_entities(req, extra_headers, timeout_seconds)
|
|
58
|
-
err = response.error()
|
|
59
|
-
if err is not None:
|
|
60
|
-
raise err
|
|
61
|
-
msg = response.message()
|
|
62
|
-
if msg is None:
|
|
63
|
-
raise ConnectProtocolError('missing response message')
|
|
64
|
-
return msg
|
|
65
|
-
|
|
66
|
-
def call_create_entity_chain_from_jwt(
|
|
67
|
-
self, req: entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
68
|
-
) -> UnaryOutput[entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtResponse]:
|
|
69
|
-
"""Low-level method to call CreateEntityChainFromJwt, granting access to errors and metadata"""
|
|
70
|
-
url = self.base_url + "/entityresolution.EntityResolutionService/CreateEntityChainFromJwt"
|
|
71
|
-
return self._connect_client.call_unary(url, req, entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtResponse,extra_headers, timeout_seconds)
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
def create_entity_chain_from_jwt(
|
|
75
|
-
self, req: entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
76
|
-
) -> entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtResponse:
|
|
77
|
-
response = self.call_create_entity_chain_from_jwt(req, extra_headers, timeout_seconds)
|
|
78
|
-
err = response.error()
|
|
79
|
-
if err is not None:
|
|
80
|
-
raise err
|
|
81
|
-
msg = response.message()
|
|
82
|
-
if msg is None:
|
|
83
|
-
raise ConnectProtocolError('missing response message')
|
|
84
|
-
return msg
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
class AsyncEntityResolutionServiceClient:
|
|
88
|
-
def __init__(
|
|
89
|
-
self,
|
|
90
|
-
base_url: str,
|
|
91
|
-
http_client: aiohttp.ClientSession,
|
|
92
|
-
protocol: ConnectProtocol = ConnectProtocol.CONNECT_PROTOBUF,
|
|
93
|
-
):
|
|
94
|
-
self.base_url = base_url
|
|
95
|
-
self._connect_client = AsyncConnectClient(http_client, protocol)
|
|
96
|
-
|
|
97
|
-
async def call_resolve_entities(
|
|
98
|
-
self, req: entityresolution.entity_resolution_pb2.ResolveEntitiesRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
99
|
-
) -> UnaryOutput[entityresolution.entity_resolution_pb2.ResolveEntitiesResponse]:
|
|
100
|
-
"""Low-level method to call ResolveEntities, granting access to errors and metadata"""
|
|
101
|
-
url = self.base_url + "/entityresolution.EntityResolutionService/ResolveEntities"
|
|
102
|
-
return await self._connect_client.call_unary(url, req, entityresolution.entity_resolution_pb2.ResolveEntitiesResponse,extra_headers, timeout_seconds)
|
|
103
|
-
|
|
104
|
-
async def resolve_entities(
|
|
105
|
-
self, req: entityresolution.entity_resolution_pb2.ResolveEntitiesRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
106
|
-
) -> entityresolution.entity_resolution_pb2.ResolveEntitiesResponse:
|
|
107
|
-
response = await self.call_resolve_entities(req, extra_headers, timeout_seconds)
|
|
108
|
-
err = response.error()
|
|
109
|
-
if err is not None:
|
|
110
|
-
raise err
|
|
111
|
-
msg = response.message()
|
|
112
|
-
if msg is None:
|
|
113
|
-
raise ConnectProtocolError('missing response message')
|
|
114
|
-
return msg
|
|
115
|
-
|
|
116
|
-
async def call_create_entity_chain_from_jwt(
|
|
117
|
-
self, req: entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
118
|
-
) -> UnaryOutput[entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtResponse]:
|
|
119
|
-
"""Low-level method to call CreateEntityChainFromJwt, granting access to errors and metadata"""
|
|
120
|
-
url = self.base_url + "/entityresolution.EntityResolutionService/CreateEntityChainFromJwt"
|
|
121
|
-
return await self._connect_client.call_unary(url, req, entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtResponse,extra_headers, timeout_seconds)
|
|
122
|
-
|
|
123
|
-
async def create_entity_chain_from_jwt(
|
|
124
|
-
self, req: entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
125
|
-
) -> entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtResponse:
|
|
126
|
-
response = await self.call_create_entity_chain_from_jwt(req, extra_headers, timeout_seconds)
|
|
127
|
-
err = response.error()
|
|
128
|
-
if err is not None:
|
|
129
|
-
raise err
|
|
130
|
-
msg = response.message()
|
|
131
|
-
if msg is None:
|
|
132
|
-
raise ConnectProtocolError('missing response message')
|
|
133
|
-
return msg
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
@typing.runtime_checkable
|
|
137
|
-
class EntityResolutionServiceProtocol(typing.Protocol):
|
|
138
|
-
def resolve_entities(self, req: ClientRequest[entityresolution.entity_resolution_pb2.ResolveEntitiesRequest]) -> ServerResponse[entityresolution.entity_resolution_pb2.ResolveEntitiesResponse]:
|
|
139
|
-
...
|
|
140
|
-
def create_entity_chain_from_jwt(self, req: ClientRequest[entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtRequest]) -> ServerResponse[entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtResponse]:
|
|
141
|
-
...
|
|
142
|
-
|
|
143
|
-
ENTITY_RESOLUTION_SERVICE_PATH_PREFIX = "/entityresolution.EntityResolutionService"
|
|
144
|
-
|
|
145
|
-
def wsgi_entity_resolution_service(implementation: EntityResolutionServiceProtocol) -> WSGIApplication:
|
|
146
|
-
app = ConnectWSGI()
|
|
147
|
-
app.register_unary_rpc("/entityresolution.EntityResolutionService/ResolveEntities", implementation.resolve_entities, entityresolution.entity_resolution_pb2.ResolveEntitiesRequest)
|
|
148
|
-
app.register_unary_rpc("/entityresolution.EntityResolutionService/CreateEntityChainFromJwt", implementation.create_entity_chain_from_jwt, entityresolution.entity_resolution_pb2.CreateEntityChainFromJwtRequest)
|
|
149
|
-
return app
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
# Generated Connect client code
|
|
2
|
-
|
|
3
|
-
from __future__ import annotations
|
|
4
|
-
from collections.abc import AsyncIterator
|
|
5
|
-
from collections.abc import Iterator
|
|
6
|
-
from collections.abc import Iterable
|
|
7
|
-
import aiohttp
|
|
8
|
-
import urllib3
|
|
9
|
-
import typing
|
|
10
|
-
import sys
|
|
11
|
-
|
|
12
|
-
from connectrpc.client_async import AsyncConnectClient
|
|
13
|
-
from connectrpc.client_sync import ConnectClient
|
|
14
|
-
from connectrpc.client_protocol import ConnectProtocol
|
|
15
|
-
from connectrpc.client_connect import ConnectProtocolError
|
|
16
|
-
from connectrpc.headers import HeaderInput
|
|
17
|
-
from connectrpc.server import ClientRequest
|
|
18
|
-
from connectrpc.server import ClientStream
|
|
19
|
-
from connectrpc.server import ServerResponse
|
|
20
|
-
from connectrpc.server import ServerStream
|
|
21
|
-
from connectrpc.server_sync import ConnectWSGI
|
|
22
|
-
from connectrpc.streams import StreamInput
|
|
23
|
-
from connectrpc.streams import AsyncStreamOutput
|
|
24
|
-
from connectrpc.streams import StreamOutput
|
|
25
|
-
from connectrpc.unary import UnaryOutput
|
|
26
|
-
from connectrpc.unary import ClientStreamingOutput
|
|
27
|
-
|
|
28
|
-
if typing.TYPE_CHECKING:
|
|
29
|
-
# wsgiref.types was added in Python 3.11.
|
|
30
|
-
if sys.version_info >= (3, 11):
|
|
31
|
-
from wsgiref.types import WSGIApplication
|
|
32
|
-
else:
|
|
33
|
-
from _typeshed.wsgi import WSGIApplication
|
|
34
|
-
|
|
35
|
-
import entityresolution.v2.entity_resolution_pb2
|
|
36
|
-
|
|
37
|
-
class EntityResolutionServiceClient:
|
|
38
|
-
def __init__(
|
|
39
|
-
self,
|
|
40
|
-
base_url: str,
|
|
41
|
-
http_client: urllib3.PoolManager | None = None,
|
|
42
|
-
protocol: ConnectProtocol = ConnectProtocol.CONNECT_PROTOBUF,
|
|
43
|
-
):
|
|
44
|
-
self.base_url = base_url
|
|
45
|
-
self._connect_client = ConnectClient(http_client, protocol)
|
|
46
|
-
def call_resolve_entities(
|
|
47
|
-
self, req: entityresolution.v2.entity_resolution_pb2.ResolveEntitiesRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
48
|
-
) -> UnaryOutput[entityresolution.v2.entity_resolution_pb2.ResolveEntitiesResponse]:
|
|
49
|
-
"""Low-level method to call ResolveEntities, granting access to errors and metadata"""
|
|
50
|
-
url = self.base_url + "/entityresolution.v2.EntityResolutionService/ResolveEntities"
|
|
51
|
-
return self._connect_client.call_unary(url, req, entityresolution.v2.entity_resolution_pb2.ResolveEntitiesResponse,extra_headers, timeout_seconds)
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
def resolve_entities(
|
|
55
|
-
self, req: entityresolution.v2.entity_resolution_pb2.ResolveEntitiesRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
56
|
-
) -> entityresolution.v2.entity_resolution_pb2.ResolveEntitiesResponse:
|
|
57
|
-
response = self.call_resolve_entities(req, extra_headers, timeout_seconds)
|
|
58
|
-
err = response.error()
|
|
59
|
-
if err is not None:
|
|
60
|
-
raise err
|
|
61
|
-
msg = response.message()
|
|
62
|
-
if msg is None:
|
|
63
|
-
raise ConnectProtocolError('missing response message')
|
|
64
|
-
return msg
|
|
65
|
-
|
|
66
|
-
def call_create_entity_chains_from_tokens(
|
|
67
|
-
self, req: entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
68
|
-
) -> UnaryOutput[entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensResponse]:
|
|
69
|
-
"""Low-level method to call CreateEntityChainsFromTokens, granting access to errors and metadata"""
|
|
70
|
-
url = self.base_url + "/entityresolution.v2.EntityResolutionService/CreateEntityChainsFromTokens"
|
|
71
|
-
return self._connect_client.call_unary(url, req, entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensResponse,extra_headers, timeout_seconds)
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
def create_entity_chains_from_tokens(
|
|
75
|
-
self, req: entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
76
|
-
) -> entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensResponse:
|
|
77
|
-
response = self.call_create_entity_chains_from_tokens(req, extra_headers, timeout_seconds)
|
|
78
|
-
err = response.error()
|
|
79
|
-
if err is not None:
|
|
80
|
-
raise err
|
|
81
|
-
msg = response.message()
|
|
82
|
-
if msg is None:
|
|
83
|
-
raise ConnectProtocolError('missing response message')
|
|
84
|
-
return msg
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
class AsyncEntityResolutionServiceClient:
|
|
88
|
-
def __init__(
|
|
89
|
-
self,
|
|
90
|
-
base_url: str,
|
|
91
|
-
http_client: aiohttp.ClientSession,
|
|
92
|
-
protocol: ConnectProtocol = ConnectProtocol.CONNECT_PROTOBUF,
|
|
93
|
-
):
|
|
94
|
-
self.base_url = base_url
|
|
95
|
-
self._connect_client = AsyncConnectClient(http_client, protocol)
|
|
96
|
-
|
|
97
|
-
async def call_resolve_entities(
|
|
98
|
-
self, req: entityresolution.v2.entity_resolution_pb2.ResolveEntitiesRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
99
|
-
) -> UnaryOutput[entityresolution.v2.entity_resolution_pb2.ResolveEntitiesResponse]:
|
|
100
|
-
"""Low-level method to call ResolveEntities, granting access to errors and metadata"""
|
|
101
|
-
url = self.base_url + "/entityresolution.v2.EntityResolutionService/ResolveEntities"
|
|
102
|
-
return await self._connect_client.call_unary(url, req, entityresolution.v2.entity_resolution_pb2.ResolveEntitiesResponse,extra_headers, timeout_seconds)
|
|
103
|
-
|
|
104
|
-
async def resolve_entities(
|
|
105
|
-
self, req: entityresolution.v2.entity_resolution_pb2.ResolveEntitiesRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
106
|
-
) -> entityresolution.v2.entity_resolution_pb2.ResolveEntitiesResponse:
|
|
107
|
-
response = await self.call_resolve_entities(req, extra_headers, timeout_seconds)
|
|
108
|
-
err = response.error()
|
|
109
|
-
if err is not None:
|
|
110
|
-
raise err
|
|
111
|
-
msg = response.message()
|
|
112
|
-
if msg is None:
|
|
113
|
-
raise ConnectProtocolError('missing response message')
|
|
114
|
-
return msg
|
|
115
|
-
|
|
116
|
-
async def call_create_entity_chains_from_tokens(
|
|
117
|
-
self, req: entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
118
|
-
) -> UnaryOutput[entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensResponse]:
|
|
119
|
-
"""Low-level method to call CreateEntityChainsFromTokens, granting access to errors and metadata"""
|
|
120
|
-
url = self.base_url + "/entityresolution.v2.EntityResolutionService/CreateEntityChainsFromTokens"
|
|
121
|
-
return await self._connect_client.call_unary(url, req, entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensResponse,extra_headers, timeout_seconds)
|
|
122
|
-
|
|
123
|
-
async def create_entity_chains_from_tokens(
|
|
124
|
-
self, req: entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
125
|
-
) -> entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensResponse:
|
|
126
|
-
response = await self.call_create_entity_chains_from_tokens(req, extra_headers, timeout_seconds)
|
|
127
|
-
err = response.error()
|
|
128
|
-
if err is not None:
|
|
129
|
-
raise err
|
|
130
|
-
msg = response.message()
|
|
131
|
-
if msg is None:
|
|
132
|
-
raise ConnectProtocolError('missing response message')
|
|
133
|
-
return msg
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
@typing.runtime_checkable
|
|
137
|
-
class EntityResolutionServiceProtocol(typing.Protocol):
|
|
138
|
-
def resolve_entities(self, req: ClientRequest[entityresolution.v2.entity_resolution_pb2.ResolveEntitiesRequest]) -> ServerResponse[entityresolution.v2.entity_resolution_pb2.ResolveEntitiesResponse]:
|
|
139
|
-
...
|
|
140
|
-
def create_entity_chains_from_tokens(self, req: ClientRequest[entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensRequest]) -> ServerResponse[entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensResponse]:
|
|
141
|
-
...
|
|
142
|
-
|
|
143
|
-
ENTITY_RESOLUTION_SERVICE_PATH_PREFIX = "/entityresolution.v2.EntityResolutionService"
|
|
144
|
-
|
|
145
|
-
def wsgi_entity_resolution_service(implementation: EntityResolutionServiceProtocol) -> WSGIApplication:
|
|
146
|
-
app = ConnectWSGI()
|
|
147
|
-
app.register_unary_rpc("/entityresolution.v2.EntityResolutionService/ResolveEntities", implementation.resolve_entities, entityresolution.v2.entity_resolution_pb2.ResolveEntitiesRequest)
|
|
148
|
-
app.register_unary_rpc("/entityresolution.v2.EntityResolutionService/CreateEntityChainsFromTokens", implementation.create_entity_chains_from_tokens, entityresolution.v2.entity_resolution_pb2.CreateEntityChainsFromTokensRequest)
|
|
149
|
-
return app
|
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
# Generated Connect client code
|
|
2
|
-
|
|
3
|
-
from __future__ import annotations
|
|
4
|
-
from collections.abc import AsyncIterator
|
|
5
|
-
from collections.abc import Iterator
|
|
6
|
-
from collections.abc import Iterable
|
|
7
|
-
import aiohttp
|
|
8
|
-
import urllib3
|
|
9
|
-
import typing
|
|
10
|
-
import sys
|
|
11
|
-
|
|
12
|
-
from connectrpc.client_async import AsyncConnectClient
|
|
13
|
-
from connectrpc.client_sync import ConnectClient
|
|
14
|
-
from connectrpc.client_protocol import ConnectProtocol
|
|
15
|
-
from connectrpc.client_connect import ConnectProtocolError
|
|
16
|
-
from connectrpc.headers import HeaderInput
|
|
17
|
-
from connectrpc.server import ClientRequest
|
|
18
|
-
from connectrpc.server import ClientStream
|
|
19
|
-
from connectrpc.server import ServerResponse
|
|
20
|
-
from connectrpc.server import ServerStream
|
|
21
|
-
from connectrpc.server_sync import ConnectWSGI
|
|
22
|
-
from connectrpc.streams import StreamInput
|
|
23
|
-
from connectrpc.streams import AsyncStreamOutput
|
|
24
|
-
from connectrpc.streams import StreamOutput
|
|
25
|
-
from connectrpc.unary import UnaryOutput
|
|
26
|
-
from connectrpc.unary import ClientStreamingOutput
|
|
27
|
-
|
|
28
|
-
if typing.TYPE_CHECKING:
|
|
29
|
-
# wsgiref.types was added in Python 3.11.
|
|
30
|
-
if sys.version_info >= (3, 11):
|
|
31
|
-
from wsgiref.types import WSGIApplication
|
|
32
|
-
else:
|
|
33
|
-
from _typeshed.wsgi import WSGIApplication
|
|
34
|
-
|
|
35
|
-
import google.protobuf.wrappers_pb2
|
|
36
|
-
from . import kas_pb2
|
|
37
|
-
|
|
38
|
-
class AccessServiceClient:
|
|
39
|
-
def __init__(
|
|
40
|
-
self,
|
|
41
|
-
base_url: str,
|
|
42
|
-
http_client: urllib3.PoolManager | None = None,
|
|
43
|
-
protocol: ConnectProtocol = ConnectProtocol.CONNECT_PROTOBUF,
|
|
44
|
-
):
|
|
45
|
-
self.base_url = base_url
|
|
46
|
-
self._connect_client = ConnectClient(http_client, protocol)
|
|
47
|
-
def call_public_key(
|
|
48
|
-
self, req: kas_pb2.PublicKeyRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
49
|
-
) -> UnaryOutput[kas_pb2.PublicKeyResponse]:
|
|
50
|
-
"""Low-level method to call PublicKey, granting access to errors and metadata"""
|
|
51
|
-
url = self.base_url + "/kas.AccessService/PublicKey"
|
|
52
|
-
return self._connect_client.call_unary(url, req, kas_pb2.PublicKeyResponse,extra_headers, timeout_seconds)
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
def public_key(
|
|
56
|
-
self, req: kas_pb2.PublicKeyRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
57
|
-
) -> kas_pb2.PublicKeyResponse:
|
|
58
|
-
response = self.call_public_key(req, extra_headers, timeout_seconds)
|
|
59
|
-
err = response.error()
|
|
60
|
-
if err is not None:
|
|
61
|
-
raise err
|
|
62
|
-
msg = response.message()
|
|
63
|
-
if msg is None:
|
|
64
|
-
raise ConnectProtocolError('missing response message')
|
|
65
|
-
return msg
|
|
66
|
-
|
|
67
|
-
def call_legacy_public_key(
|
|
68
|
-
self, req: kas_pb2.LegacyPublicKeyRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
69
|
-
) -> UnaryOutput[google.protobuf.wrappers_pb2.StringValue]:
|
|
70
|
-
"""Low-level method to call LegacyPublicKey, granting access to errors and metadata"""
|
|
71
|
-
url = self.base_url + "/kas.AccessService/LegacyPublicKey"
|
|
72
|
-
return self._connect_client.call_unary(url, req, google.protobuf.wrappers_pb2.StringValue,extra_headers, timeout_seconds)
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
def legacy_public_key(
|
|
76
|
-
self, req: kas_pb2.LegacyPublicKeyRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
77
|
-
) -> google.protobuf.wrappers_pb2.StringValue:
|
|
78
|
-
response = self.call_legacy_public_key(req, extra_headers, timeout_seconds)
|
|
79
|
-
err = response.error()
|
|
80
|
-
if err is not None:
|
|
81
|
-
raise err
|
|
82
|
-
msg = response.message()
|
|
83
|
-
if msg is None:
|
|
84
|
-
raise ConnectProtocolError('missing response message')
|
|
85
|
-
return msg
|
|
86
|
-
|
|
87
|
-
def call_rewrap(
|
|
88
|
-
self, req: kas_pb2.RewrapRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
89
|
-
) -> UnaryOutput[kas_pb2.RewrapResponse]:
|
|
90
|
-
"""Low-level method to call Rewrap, granting access to errors and metadata"""
|
|
91
|
-
url = self.base_url + "/kas.AccessService/Rewrap"
|
|
92
|
-
return self._connect_client.call_unary(url, req, kas_pb2.RewrapResponse,extra_headers, timeout_seconds)
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
def rewrap(
|
|
96
|
-
self, req: kas_pb2.RewrapRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
97
|
-
) -> kas_pb2.RewrapResponse:
|
|
98
|
-
response = self.call_rewrap(req, extra_headers, timeout_seconds)
|
|
99
|
-
err = response.error()
|
|
100
|
-
if err is not None:
|
|
101
|
-
raise err
|
|
102
|
-
msg = response.message()
|
|
103
|
-
if msg is None:
|
|
104
|
-
raise ConnectProtocolError('missing response message')
|
|
105
|
-
return msg
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
class AsyncAccessServiceClient:
|
|
109
|
-
def __init__(
|
|
110
|
-
self,
|
|
111
|
-
base_url: str,
|
|
112
|
-
http_client: aiohttp.ClientSession,
|
|
113
|
-
protocol: ConnectProtocol = ConnectProtocol.CONNECT_PROTOBUF,
|
|
114
|
-
):
|
|
115
|
-
self.base_url = base_url
|
|
116
|
-
self._connect_client = AsyncConnectClient(http_client, protocol)
|
|
117
|
-
|
|
118
|
-
async def call_public_key(
|
|
119
|
-
self, req: kas_pb2.PublicKeyRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
120
|
-
) -> UnaryOutput[kas_pb2.PublicKeyResponse]:
|
|
121
|
-
"""Low-level method to call PublicKey, granting access to errors and metadata"""
|
|
122
|
-
url = self.base_url + "/kas.AccessService/PublicKey"
|
|
123
|
-
return await self._connect_client.call_unary(url, req, kas_pb2.PublicKeyResponse,extra_headers, timeout_seconds)
|
|
124
|
-
|
|
125
|
-
async def public_key(
|
|
126
|
-
self, req: kas_pb2.PublicKeyRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
127
|
-
) -> kas_pb2.PublicKeyResponse:
|
|
128
|
-
response = await self.call_public_key(req, extra_headers, timeout_seconds)
|
|
129
|
-
err = response.error()
|
|
130
|
-
if err is not None:
|
|
131
|
-
raise err
|
|
132
|
-
msg = response.message()
|
|
133
|
-
if msg is None:
|
|
134
|
-
raise ConnectProtocolError('missing response message')
|
|
135
|
-
return msg
|
|
136
|
-
|
|
137
|
-
async def call_legacy_public_key(
|
|
138
|
-
self, req: kas_pb2.LegacyPublicKeyRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
139
|
-
) -> UnaryOutput[google.protobuf.wrappers_pb2.StringValue]:
|
|
140
|
-
"""Low-level method to call LegacyPublicKey, granting access to errors and metadata"""
|
|
141
|
-
url = self.base_url + "/kas.AccessService/LegacyPublicKey"
|
|
142
|
-
return await self._connect_client.call_unary(url, req, google.protobuf.wrappers_pb2.StringValue,extra_headers, timeout_seconds)
|
|
143
|
-
|
|
144
|
-
async def legacy_public_key(
|
|
145
|
-
self, req: kas_pb2.LegacyPublicKeyRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
146
|
-
) -> google.protobuf.wrappers_pb2.StringValue:
|
|
147
|
-
response = await self.call_legacy_public_key(req, extra_headers, timeout_seconds)
|
|
148
|
-
err = response.error()
|
|
149
|
-
if err is not None:
|
|
150
|
-
raise err
|
|
151
|
-
msg = response.message()
|
|
152
|
-
if msg is None:
|
|
153
|
-
raise ConnectProtocolError('missing response message')
|
|
154
|
-
return msg
|
|
155
|
-
|
|
156
|
-
async def call_rewrap(
|
|
157
|
-
self, req: kas_pb2.RewrapRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
158
|
-
) -> UnaryOutput[kas_pb2.RewrapResponse]:
|
|
159
|
-
"""Low-level method to call Rewrap, granting access to errors and metadata"""
|
|
160
|
-
url = self.base_url + "/kas.AccessService/Rewrap"
|
|
161
|
-
return await self._connect_client.call_unary(url, req, kas_pb2.RewrapResponse,extra_headers, timeout_seconds)
|
|
162
|
-
|
|
163
|
-
async def rewrap(
|
|
164
|
-
self, req: kas_pb2.RewrapRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
|
|
165
|
-
) -> kas_pb2.RewrapResponse:
|
|
166
|
-
response = await self.call_rewrap(req, extra_headers, timeout_seconds)
|
|
167
|
-
err = response.error()
|
|
168
|
-
if err is not None:
|
|
169
|
-
raise err
|
|
170
|
-
msg = response.message()
|
|
171
|
-
if msg is None:
|
|
172
|
-
raise ConnectProtocolError('missing response message')
|
|
173
|
-
return msg
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
@typing.runtime_checkable
|
|
177
|
-
class AccessServiceProtocol(typing.Protocol):
|
|
178
|
-
def public_key(self, req: ClientRequest[kas_pb2.PublicKeyRequest]) -> ServerResponse[kas_pb2.PublicKeyResponse]:
|
|
179
|
-
...
|
|
180
|
-
def legacy_public_key(self, req: ClientRequest[kas_pb2.LegacyPublicKeyRequest]) -> ServerResponse[google.protobuf.wrappers_pb2.StringValue]:
|
|
181
|
-
...
|
|
182
|
-
def rewrap(self, req: ClientRequest[kas_pb2.RewrapRequest]) -> ServerResponse[kas_pb2.RewrapResponse]:
|
|
183
|
-
...
|
|
184
|
-
|
|
185
|
-
ACCESS_SERVICE_PATH_PREFIX = "/kas.AccessService"
|
|
186
|
-
|
|
187
|
-
def wsgi_access_service(implementation: AccessServiceProtocol) -> WSGIApplication:
|
|
188
|
-
app = ConnectWSGI()
|
|
189
|
-
app.register_unary_rpc("/kas.AccessService/PublicKey", implementation.public_key, kas_pb2.PublicKeyRequest)
|
|
190
|
-
app.register_unary_rpc("/kas.AccessService/LegacyPublicKey", implementation.legacy_public_key, kas_pb2.LegacyPublicKeyRequest)
|
|
191
|
-
app.register_unary_rpc("/kas.AccessService/Rewrap", implementation.rewrap, kas_pb2.RewrapRequest)
|
|
192
|
-
return app
|