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.
Files changed (61) hide show
  1. otdf_python/autoconfigure_utils.py +0 -2
  2. otdf_python/cli.py +50 -21
  3. otdf_python/collection_store.py +0 -1
  4. otdf_python/ecdh.py +0 -6
  5. otdf_python/kas_allowlist.py +182 -0
  6. otdf_python/kas_client.py +44 -2
  7. otdf_python/kas_connect_rpc_client.py +59 -19
  8. otdf_python/nanotdf.py +4 -14
  9. otdf_python/nanotdf_ecdsa_struct.py +0 -2
  10. otdf_python/nanotdf_type.py +1 -1
  11. otdf_python/sdk.py +31 -15
  12. otdf_python/sdk_builder.py +88 -8
  13. otdf_python/tdf.py +2 -2
  14. {otdf_python-0.4.1.dist-info → otdf_python-0.4.3.dist-info}/METADATA +3 -2
  15. {otdf_python-0.4.1.dist-info → otdf_python-0.4.3.dist-info}/RECORD +46 -36
  16. otdf_python_proto/__init__.py +2 -6
  17. otdf_python_proto/authorization/__init__.py +10 -0
  18. otdf_python_proto/authorization/authorization_connect.py +250 -0
  19. otdf_python_proto/authorization/v2/authorization_connect.py +315 -0
  20. otdf_python_proto/entityresolution/__init__.py +10 -0
  21. otdf_python_proto/entityresolution/entity_resolution_connect.py +185 -0
  22. otdf_python_proto/entityresolution/v2/entity_resolution_connect.py +185 -0
  23. otdf_python_proto/kas/__init__.py +2 -2
  24. otdf_python_proto/kas/kas_connect.py +259 -0
  25. otdf_python_proto/policy/actions/__init__.py +11 -0
  26. otdf_python_proto/policy/actions/actions_connect.py +380 -0
  27. otdf_python_proto/policy/attributes/__init__.py +11 -0
  28. otdf_python_proto/policy/attributes/attributes_connect.py +1310 -0
  29. otdf_python_proto/policy/kasregistry/__init__.py +11 -0
  30. otdf_python_proto/policy/kasregistry/key_access_server_registry_connect.py +912 -0
  31. otdf_python_proto/policy/keymanagement/__init__.py +11 -0
  32. otdf_python_proto/policy/keymanagement/key_management_connect.py +380 -0
  33. otdf_python_proto/policy/namespaces/__init__.py +11 -0
  34. otdf_python_proto/policy/namespaces/namespaces_connect.py +648 -0
  35. otdf_python_proto/policy/registeredresources/__init__.py +11 -0
  36. otdf_python_proto/policy/registeredresources/registered_resources_connect.py +770 -0
  37. otdf_python_proto/policy/resourcemapping/__init__.py +11 -0
  38. otdf_python_proto/policy/resourcemapping/resource_mapping_connect.py +790 -0
  39. otdf_python_proto/policy/subjectmapping/__init__.py +11 -0
  40. otdf_python_proto/policy/subjectmapping/subject_mapping_connect.py +851 -0
  41. otdf_python_proto/policy/unsafe/__init__.py +11 -0
  42. otdf_python_proto/policy/unsafe/unsafe_connect.py +705 -0
  43. otdf_python_proto/wellknownconfiguration/__init__.py +10 -0
  44. otdf_python_proto/wellknownconfiguration/wellknown_configuration_connect.py +124 -0
  45. otdf_python_proto/authorization/authorization_pb2_connect.py +0 -191
  46. otdf_python_proto/authorization/v2/authorization_pb2_connect.py +0 -233
  47. otdf_python_proto/entityresolution/entity_resolution_pb2_connect.py +0 -149
  48. otdf_python_proto/entityresolution/v2/entity_resolution_pb2_connect.py +0 -149
  49. otdf_python_proto/kas/kas_pb2_connect.py +0 -192
  50. otdf_python_proto/policy/actions/actions_pb2_connect.py +0 -275
  51. otdf_python_proto/policy/attributes/attributes_pb2_connect.py +0 -863
  52. otdf_python_proto/policy/kasregistry/key_access_server_registry_pb2_connect.py +0 -611
  53. otdf_python_proto/policy/keymanagement/key_management_pb2_connect.py +0 -275
  54. otdf_python_proto/policy/namespaces/namespaces_pb2_connect.py +0 -443
  55. otdf_python_proto/policy/registeredresources/registered_resources_pb2_connect.py +0 -527
  56. otdf_python_proto/policy/resourcemapping/resource_mapping_pb2_connect.py +0 -527
  57. otdf_python_proto/policy/subjectmapping/subject_mapping_pb2_connect.py +0 -569
  58. otdf_python_proto/policy/unsafe/unsafe_pb2_connect.py +0 -485
  59. otdf_python_proto/wellknownconfiguration/wellknown_configuration_pb2_connect.py +0 -107
  60. {otdf_python-0.4.1.dist-info → otdf_python-0.4.3.dist-info}/WHEEL +0 -0
  61. {otdf_python-0.4.1.dist-info → otdf_python-0.4.3.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,705 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by https://github.com/connectrpc/connect-python. DO NOT EDIT!
3
+ # source: policy/unsafe/unsafe.proto
4
+
5
+ from collections.abc import AsyncGenerator, AsyncIterator, Iterable, Iterator, Mapping
6
+ from typing import Protocol
7
+
8
+ from connectrpc.client import ConnectClient, ConnectClientSync
9
+ from connectrpc.code import Code
10
+ from connectrpc.errors import ConnectError
11
+ from connectrpc.interceptor import Interceptor, InterceptorSync
12
+ from connectrpc.method import IdempotencyLevel, MethodInfo
13
+ from connectrpc.request import Headers, RequestContext
14
+ from connectrpc.server import ConnectASGIApplication, ConnectWSGIApplication, Endpoint, EndpointSync
15
+ import policy.unsafe.unsafe_pb2 as policy_dot_unsafe_dot_unsafe__pb2
16
+
17
+
18
+ class UnsafeService(Protocol):
19
+ async def unsafe_update_namespace(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceResponse:
20
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
21
+
22
+ async def unsafe_reactivate_namespace(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceResponse:
23
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
24
+
25
+ async def unsafe_delete_namespace(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceResponse:
26
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
27
+
28
+ async def unsafe_update_attribute(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeResponse:
29
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
30
+
31
+ async def unsafe_reactivate_attribute(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeResponse:
32
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
33
+
34
+ async def unsafe_delete_attribute(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeResponse:
35
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
36
+
37
+ async def unsafe_update_attribute_value(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueResponse:
38
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
39
+
40
+ async def unsafe_reactivate_attribute_value(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueResponse:
41
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
42
+
43
+ async def unsafe_delete_attribute_value(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueResponse:
44
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
45
+
46
+ async def unsafe_delete_kas_key(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyResponse:
47
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
48
+
49
+
50
+ class UnsafeServiceASGIApplication(ConnectASGIApplication[UnsafeService]):
51
+ def __init__(self, service: UnsafeService | AsyncGenerator[UnsafeService], *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None) -> None:
52
+ super().__init__(
53
+ service=service,
54
+ endpoints=lambda svc: {
55
+ "/policy.unsafe.UnsafeService/UnsafeUpdateNamespace": Endpoint.unary(
56
+ method=MethodInfo(
57
+ name="UnsafeUpdateNamespace",
58
+ service_name="policy.unsafe.UnsafeService",
59
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceRequest,
60
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceResponse,
61
+ idempotency_level=IdempotencyLevel.UNKNOWN,
62
+ ),
63
+ function=svc.unsafe_update_namespace,
64
+ ),
65
+ "/policy.unsafe.UnsafeService/UnsafeReactivateNamespace": Endpoint.unary(
66
+ method=MethodInfo(
67
+ name="UnsafeReactivateNamespace",
68
+ service_name="policy.unsafe.UnsafeService",
69
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceRequest,
70
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceResponse,
71
+ idempotency_level=IdempotencyLevel.UNKNOWN,
72
+ ),
73
+ function=svc.unsafe_reactivate_namespace,
74
+ ),
75
+ "/policy.unsafe.UnsafeService/UnsafeDeleteNamespace": Endpoint.unary(
76
+ method=MethodInfo(
77
+ name="UnsafeDeleteNamespace",
78
+ service_name="policy.unsafe.UnsafeService",
79
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceRequest,
80
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceResponse,
81
+ idempotency_level=IdempotencyLevel.UNKNOWN,
82
+ ),
83
+ function=svc.unsafe_delete_namespace,
84
+ ),
85
+ "/policy.unsafe.UnsafeService/UnsafeUpdateAttribute": Endpoint.unary(
86
+ method=MethodInfo(
87
+ name="UnsafeUpdateAttribute",
88
+ service_name="policy.unsafe.UnsafeService",
89
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeRequest,
90
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeResponse,
91
+ idempotency_level=IdempotencyLevel.UNKNOWN,
92
+ ),
93
+ function=svc.unsafe_update_attribute,
94
+ ),
95
+ "/policy.unsafe.UnsafeService/UnsafeReactivateAttribute": Endpoint.unary(
96
+ method=MethodInfo(
97
+ name="UnsafeReactivateAttribute",
98
+ service_name="policy.unsafe.UnsafeService",
99
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeRequest,
100
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeResponse,
101
+ idempotency_level=IdempotencyLevel.UNKNOWN,
102
+ ),
103
+ function=svc.unsafe_reactivate_attribute,
104
+ ),
105
+ "/policy.unsafe.UnsafeService/UnsafeDeleteAttribute": Endpoint.unary(
106
+ method=MethodInfo(
107
+ name="UnsafeDeleteAttribute",
108
+ service_name="policy.unsafe.UnsafeService",
109
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeRequest,
110
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeResponse,
111
+ idempotency_level=IdempotencyLevel.UNKNOWN,
112
+ ),
113
+ function=svc.unsafe_delete_attribute,
114
+ ),
115
+ "/policy.unsafe.UnsafeService/UnsafeUpdateAttributeValue": Endpoint.unary(
116
+ method=MethodInfo(
117
+ name="UnsafeUpdateAttributeValue",
118
+ service_name="policy.unsafe.UnsafeService",
119
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueRequest,
120
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueResponse,
121
+ idempotency_level=IdempotencyLevel.UNKNOWN,
122
+ ),
123
+ function=svc.unsafe_update_attribute_value,
124
+ ),
125
+ "/policy.unsafe.UnsafeService/UnsafeReactivateAttributeValue": Endpoint.unary(
126
+ method=MethodInfo(
127
+ name="UnsafeReactivateAttributeValue",
128
+ service_name="policy.unsafe.UnsafeService",
129
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueRequest,
130
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueResponse,
131
+ idempotency_level=IdempotencyLevel.UNKNOWN,
132
+ ),
133
+ function=svc.unsafe_reactivate_attribute_value,
134
+ ),
135
+ "/policy.unsafe.UnsafeService/UnsafeDeleteAttributeValue": Endpoint.unary(
136
+ method=MethodInfo(
137
+ name="UnsafeDeleteAttributeValue",
138
+ service_name="policy.unsafe.UnsafeService",
139
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueRequest,
140
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueResponse,
141
+ idempotency_level=IdempotencyLevel.UNKNOWN,
142
+ ),
143
+ function=svc.unsafe_delete_attribute_value,
144
+ ),
145
+ "/policy.unsafe.UnsafeService/UnsafeDeleteKasKey": Endpoint.unary(
146
+ method=MethodInfo(
147
+ name="UnsafeDeleteKasKey",
148
+ service_name="policy.unsafe.UnsafeService",
149
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyRequest,
150
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyResponse,
151
+ idempotency_level=IdempotencyLevel.UNKNOWN,
152
+ ),
153
+ function=svc.unsafe_delete_kas_key,
154
+ ),
155
+ },
156
+ interceptors=interceptors,
157
+ read_max_bytes=read_max_bytes,
158
+ )
159
+
160
+ @property
161
+ def path(self) -> str:
162
+ """Returns the URL path to mount the application to when serving multiple applications."""
163
+ return "/policy.unsafe.UnsafeService"
164
+
165
+
166
+ class UnsafeServiceClient(ConnectClient):
167
+ async def unsafe_update_namespace(
168
+ self,
169
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceRequest,
170
+ *,
171
+ headers: Headers | Mapping[str, str] | None = None,
172
+ timeout_ms: int | None = None,
173
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceResponse:
174
+ return await self.execute_unary(
175
+ request=request,
176
+ method=MethodInfo(
177
+ name="UnsafeUpdateNamespace",
178
+ service_name="policy.unsafe.UnsafeService",
179
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceRequest,
180
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceResponse,
181
+ idempotency_level=IdempotencyLevel.UNKNOWN,
182
+ ),
183
+ headers=headers,
184
+ timeout_ms=timeout_ms,
185
+ )
186
+
187
+ async def unsafe_reactivate_namespace(
188
+ self,
189
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceRequest,
190
+ *,
191
+ headers: Headers | Mapping[str, str] | None = None,
192
+ timeout_ms: int | None = None,
193
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceResponse:
194
+ return await self.execute_unary(
195
+ request=request,
196
+ method=MethodInfo(
197
+ name="UnsafeReactivateNamespace",
198
+ service_name="policy.unsafe.UnsafeService",
199
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceRequest,
200
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceResponse,
201
+ idempotency_level=IdempotencyLevel.UNKNOWN,
202
+ ),
203
+ headers=headers,
204
+ timeout_ms=timeout_ms,
205
+ )
206
+
207
+ async def unsafe_delete_namespace(
208
+ self,
209
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceRequest,
210
+ *,
211
+ headers: Headers | Mapping[str, str] | None = None,
212
+ timeout_ms: int | None = None,
213
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceResponse:
214
+ return await self.execute_unary(
215
+ request=request,
216
+ method=MethodInfo(
217
+ name="UnsafeDeleteNamespace",
218
+ service_name="policy.unsafe.UnsafeService",
219
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceRequest,
220
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceResponse,
221
+ idempotency_level=IdempotencyLevel.UNKNOWN,
222
+ ),
223
+ headers=headers,
224
+ timeout_ms=timeout_ms,
225
+ )
226
+
227
+ async def unsafe_update_attribute(
228
+ self,
229
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeRequest,
230
+ *,
231
+ headers: Headers | Mapping[str, str] | None = None,
232
+ timeout_ms: int | None = None,
233
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeResponse:
234
+ return await self.execute_unary(
235
+ request=request,
236
+ method=MethodInfo(
237
+ name="UnsafeUpdateAttribute",
238
+ service_name="policy.unsafe.UnsafeService",
239
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeRequest,
240
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeResponse,
241
+ idempotency_level=IdempotencyLevel.UNKNOWN,
242
+ ),
243
+ headers=headers,
244
+ timeout_ms=timeout_ms,
245
+ )
246
+
247
+ async def unsafe_reactivate_attribute(
248
+ self,
249
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeRequest,
250
+ *,
251
+ headers: Headers | Mapping[str, str] | None = None,
252
+ timeout_ms: int | None = None,
253
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeResponse:
254
+ return await self.execute_unary(
255
+ request=request,
256
+ method=MethodInfo(
257
+ name="UnsafeReactivateAttribute",
258
+ service_name="policy.unsafe.UnsafeService",
259
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeRequest,
260
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeResponse,
261
+ idempotency_level=IdempotencyLevel.UNKNOWN,
262
+ ),
263
+ headers=headers,
264
+ timeout_ms=timeout_ms,
265
+ )
266
+
267
+ async def unsafe_delete_attribute(
268
+ self,
269
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeRequest,
270
+ *,
271
+ headers: Headers | Mapping[str, str] | None = None,
272
+ timeout_ms: int | None = None,
273
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeResponse:
274
+ return await self.execute_unary(
275
+ request=request,
276
+ method=MethodInfo(
277
+ name="UnsafeDeleteAttribute",
278
+ service_name="policy.unsafe.UnsafeService",
279
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeRequest,
280
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeResponse,
281
+ idempotency_level=IdempotencyLevel.UNKNOWN,
282
+ ),
283
+ headers=headers,
284
+ timeout_ms=timeout_ms,
285
+ )
286
+
287
+ async def unsafe_update_attribute_value(
288
+ self,
289
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueRequest,
290
+ *,
291
+ headers: Headers | Mapping[str, str] | None = None,
292
+ timeout_ms: int | None = None,
293
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueResponse:
294
+ return await self.execute_unary(
295
+ request=request,
296
+ method=MethodInfo(
297
+ name="UnsafeUpdateAttributeValue",
298
+ service_name="policy.unsafe.UnsafeService",
299
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueRequest,
300
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueResponse,
301
+ idempotency_level=IdempotencyLevel.UNKNOWN,
302
+ ),
303
+ headers=headers,
304
+ timeout_ms=timeout_ms,
305
+ )
306
+
307
+ async def unsafe_reactivate_attribute_value(
308
+ self,
309
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueRequest,
310
+ *,
311
+ headers: Headers | Mapping[str, str] | None = None,
312
+ timeout_ms: int | None = None,
313
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueResponse:
314
+ return await self.execute_unary(
315
+ request=request,
316
+ method=MethodInfo(
317
+ name="UnsafeReactivateAttributeValue",
318
+ service_name="policy.unsafe.UnsafeService",
319
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueRequest,
320
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueResponse,
321
+ idempotency_level=IdempotencyLevel.UNKNOWN,
322
+ ),
323
+ headers=headers,
324
+ timeout_ms=timeout_ms,
325
+ )
326
+
327
+ async def unsafe_delete_attribute_value(
328
+ self,
329
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueRequest,
330
+ *,
331
+ headers: Headers | Mapping[str, str] | None = None,
332
+ timeout_ms: int | None = None,
333
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueResponse:
334
+ return await self.execute_unary(
335
+ request=request,
336
+ method=MethodInfo(
337
+ name="UnsafeDeleteAttributeValue",
338
+ service_name="policy.unsafe.UnsafeService",
339
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueRequest,
340
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueResponse,
341
+ idempotency_level=IdempotencyLevel.UNKNOWN,
342
+ ),
343
+ headers=headers,
344
+ timeout_ms=timeout_ms,
345
+ )
346
+
347
+ async def unsafe_delete_kas_key(
348
+ self,
349
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyRequest,
350
+ *,
351
+ headers: Headers | Mapping[str, str] | None = None,
352
+ timeout_ms: int | None = None,
353
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyResponse:
354
+ return await self.execute_unary(
355
+ request=request,
356
+ method=MethodInfo(
357
+ name="UnsafeDeleteKasKey",
358
+ service_name="policy.unsafe.UnsafeService",
359
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyRequest,
360
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyResponse,
361
+ idempotency_level=IdempotencyLevel.UNKNOWN,
362
+ ),
363
+ headers=headers,
364
+ timeout_ms=timeout_ms,
365
+ )
366
+
367
+
368
+ class UnsafeServiceSync(Protocol):
369
+ def unsafe_update_namespace(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceResponse:
370
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
371
+ def unsafe_reactivate_namespace(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceResponse:
372
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
373
+ def unsafe_delete_namespace(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceResponse:
374
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
375
+ def unsafe_update_attribute(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeResponse:
376
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
377
+ def unsafe_reactivate_attribute(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeResponse:
378
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
379
+ def unsafe_delete_attribute(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeResponse:
380
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
381
+ def unsafe_update_attribute_value(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueResponse:
382
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
383
+ def unsafe_reactivate_attribute_value(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueResponse:
384
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
385
+ def unsafe_delete_attribute_value(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueResponse:
386
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
387
+ def unsafe_delete_kas_key(self, request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyRequest, ctx: RequestContext) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyResponse:
388
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
389
+
390
+
391
+ class UnsafeServiceWSGIApplication(ConnectWSGIApplication):
392
+ def __init__(self, service: UnsafeServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None) -> None:
393
+ super().__init__(
394
+ endpoints={
395
+ "/policy.unsafe.UnsafeService/UnsafeUpdateNamespace": EndpointSync.unary(
396
+ method=MethodInfo(
397
+ name="UnsafeUpdateNamespace",
398
+ service_name="policy.unsafe.UnsafeService",
399
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceRequest,
400
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceResponse,
401
+ idempotency_level=IdempotencyLevel.UNKNOWN,
402
+ ),
403
+ function=service.unsafe_update_namespace,
404
+ ),
405
+ "/policy.unsafe.UnsafeService/UnsafeReactivateNamespace": EndpointSync.unary(
406
+ method=MethodInfo(
407
+ name="UnsafeReactivateNamespace",
408
+ service_name="policy.unsafe.UnsafeService",
409
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceRequest,
410
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceResponse,
411
+ idempotency_level=IdempotencyLevel.UNKNOWN,
412
+ ),
413
+ function=service.unsafe_reactivate_namespace,
414
+ ),
415
+ "/policy.unsafe.UnsafeService/UnsafeDeleteNamespace": EndpointSync.unary(
416
+ method=MethodInfo(
417
+ name="UnsafeDeleteNamespace",
418
+ service_name="policy.unsafe.UnsafeService",
419
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceRequest,
420
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceResponse,
421
+ idempotency_level=IdempotencyLevel.UNKNOWN,
422
+ ),
423
+ function=service.unsafe_delete_namespace,
424
+ ),
425
+ "/policy.unsafe.UnsafeService/UnsafeUpdateAttribute": EndpointSync.unary(
426
+ method=MethodInfo(
427
+ name="UnsafeUpdateAttribute",
428
+ service_name="policy.unsafe.UnsafeService",
429
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeRequest,
430
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeResponse,
431
+ idempotency_level=IdempotencyLevel.UNKNOWN,
432
+ ),
433
+ function=service.unsafe_update_attribute,
434
+ ),
435
+ "/policy.unsafe.UnsafeService/UnsafeReactivateAttribute": EndpointSync.unary(
436
+ method=MethodInfo(
437
+ name="UnsafeReactivateAttribute",
438
+ service_name="policy.unsafe.UnsafeService",
439
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeRequest,
440
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeResponse,
441
+ idempotency_level=IdempotencyLevel.UNKNOWN,
442
+ ),
443
+ function=service.unsafe_reactivate_attribute,
444
+ ),
445
+ "/policy.unsafe.UnsafeService/UnsafeDeleteAttribute": EndpointSync.unary(
446
+ method=MethodInfo(
447
+ name="UnsafeDeleteAttribute",
448
+ service_name="policy.unsafe.UnsafeService",
449
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeRequest,
450
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeResponse,
451
+ idempotency_level=IdempotencyLevel.UNKNOWN,
452
+ ),
453
+ function=service.unsafe_delete_attribute,
454
+ ),
455
+ "/policy.unsafe.UnsafeService/UnsafeUpdateAttributeValue": EndpointSync.unary(
456
+ method=MethodInfo(
457
+ name="UnsafeUpdateAttributeValue",
458
+ service_name="policy.unsafe.UnsafeService",
459
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueRequest,
460
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueResponse,
461
+ idempotency_level=IdempotencyLevel.UNKNOWN,
462
+ ),
463
+ function=service.unsafe_update_attribute_value,
464
+ ),
465
+ "/policy.unsafe.UnsafeService/UnsafeReactivateAttributeValue": EndpointSync.unary(
466
+ method=MethodInfo(
467
+ name="UnsafeReactivateAttributeValue",
468
+ service_name="policy.unsafe.UnsafeService",
469
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueRequest,
470
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueResponse,
471
+ idempotency_level=IdempotencyLevel.UNKNOWN,
472
+ ),
473
+ function=service.unsafe_reactivate_attribute_value,
474
+ ),
475
+ "/policy.unsafe.UnsafeService/UnsafeDeleteAttributeValue": EndpointSync.unary(
476
+ method=MethodInfo(
477
+ name="UnsafeDeleteAttributeValue",
478
+ service_name="policy.unsafe.UnsafeService",
479
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueRequest,
480
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueResponse,
481
+ idempotency_level=IdempotencyLevel.UNKNOWN,
482
+ ),
483
+ function=service.unsafe_delete_attribute_value,
484
+ ),
485
+ "/policy.unsafe.UnsafeService/UnsafeDeleteKasKey": EndpointSync.unary(
486
+ method=MethodInfo(
487
+ name="UnsafeDeleteKasKey",
488
+ service_name="policy.unsafe.UnsafeService",
489
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyRequest,
490
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyResponse,
491
+ idempotency_level=IdempotencyLevel.UNKNOWN,
492
+ ),
493
+ function=service.unsafe_delete_kas_key,
494
+ ),
495
+ },
496
+ interceptors=interceptors,
497
+ read_max_bytes=read_max_bytes,
498
+ )
499
+
500
+ @property
501
+ def path(self) -> str:
502
+ """Returns the URL path to mount the application to when serving multiple applications."""
503
+ return "/policy.unsafe.UnsafeService"
504
+
505
+
506
+ class UnsafeServiceClientSync(ConnectClientSync):
507
+ def unsafe_update_namespace(
508
+ self,
509
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceRequest,
510
+ *,
511
+ headers: Headers | Mapping[str, str] | None = None,
512
+ timeout_ms: int | None = None,
513
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceResponse:
514
+ return self.execute_unary(
515
+ request=request,
516
+ method=MethodInfo(
517
+ name="UnsafeUpdateNamespace",
518
+ service_name="policy.unsafe.UnsafeService",
519
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceRequest,
520
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateNamespaceResponse,
521
+ idempotency_level=IdempotencyLevel.UNKNOWN,
522
+ ),
523
+ headers=headers,
524
+ timeout_ms=timeout_ms,
525
+ )
526
+
527
+ def unsafe_reactivate_namespace(
528
+ self,
529
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceRequest,
530
+ *,
531
+ headers: Headers | Mapping[str, str] | None = None,
532
+ timeout_ms: int | None = None,
533
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceResponse:
534
+ return self.execute_unary(
535
+ request=request,
536
+ method=MethodInfo(
537
+ name="UnsafeReactivateNamespace",
538
+ service_name="policy.unsafe.UnsafeService",
539
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceRequest,
540
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateNamespaceResponse,
541
+ idempotency_level=IdempotencyLevel.UNKNOWN,
542
+ ),
543
+ headers=headers,
544
+ timeout_ms=timeout_ms,
545
+ )
546
+
547
+ def unsafe_delete_namespace(
548
+ self,
549
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceRequest,
550
+ *,
551
+ headers: Headers | Mapping[str, str] | None = None,
552
+ timeout_ms: int | None = None,
553
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceResponse:
554
+ return self.execute_unary(
555
+ request=request,
556
+ method=MethodInfo(
557
+ name="UnsafeDeleteNamespace",
558
+ service_name="policy.unsafe.UnsafeService",
559
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceRequest,
560
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteNamespaceResponse,
561
+ idempotency_level=IdempotencyLevel.UNKNOWN,
562
+ ),
563
+ headers=headers,
564
+ timeout_ms=timeout_ms,
565
+ )
566
+
567
+ def unsafe_update_attribute(
568
+ self,
569
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeRequest,
570
+ *,
571
+ headers: Headers | Mapping[str, str] | None = None,
572
+ timeout_ms: int | None = None,
573
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeResponse:
574
+ return self.execute_unary(
575
+ request=request,
576
+ method=MethodInfo(
577
+ name="UnsafeUpdateAttribute",
578
+ service_name="policy.unsafe.UnsafeService",
579
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeRequest,
580
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeResponse,
581
+ idempotency_level=IdempotencyLevel.UNKNOWN,
582
+ ),
583
+ headers=headers,
584
+ timeout_ms=timeout_ms,
585
+ )
586
+
587
+ def unsafe_reactivate_attribute(
588
+ self,
589
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeRequest,
590
+ *,
591
+ headers: Headers | Mapping[str, str] | None = None,
592
+ timeout_ms: int | None = None,
593
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeResponse:
594
+ return self.execute_unary(
595
+ request=request,
596
+ method=MethodInfo(
597
+ name="UnsafeReactivateAttribute",
598
+ service_name="policy.unsafe.UnsafeService",
599
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeRequest,
600
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeResponse,
601
+ idempotency_level=IdempotencyLevel.UNKNOWN,
602
+ ),
603
+ headers=headers,
604
+ timeout_ms=timeout_ms,
605
+ )
606
+
607
+ def unsafe_delete_attribute(
608
+ self,
609
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeRequest,
610
+ *,
611
+ headers: Headers | Mapping[str, str] | None = None,
612
+ timeout_ms: int | None = None,
613
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeResponse:
614
+ return self.execute_unary(
615
+ request=request,
616
+ method=MethodInfo(
617
+ name="UnsafeDeleteAttribute",
618
+ service_name="policy.unsafe.UnsafeService",
619
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeRequest,
620
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeResponse,
621
+ idempotency_level=IdempotencyLevel.UNKNOWN,
622
+ ),
623
+ headers=headers,
624
+ timeout_ms=timeout_ms,
625
+ )
626
+
627
+ def unsafe_update_attribute_value(
628
+ self,
629
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueRequest,
630
+ *,
631
+ headers: Headers | Mapping[str, str] | None = None,
632
+ timeout_ms: int | None = None,
633
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueResponse:
634
+ return self.execute_unary(
635
+ request=request,
636
+ method=MethodInfo(
637
+ name="UnsafeUpdateAttributeValue",
638
+ service_name="policy.unsafe.UnsafeService",
639
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueRequest,
640
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeUpdateAttributeValueResponse,
641
+ idempotency_level=IdempotencyLevel.UNKNOWN,
642
+ ),
643
+ headers=headers,
644
+ timeout_ms=timeout_ms,
645
+ )
646
+
647
+ def unsafe_reactivate_attribute_value(
648
+ self,
649
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueRequest,
650
+ *,
651
+ headers: Headers | Mapping[str, str] | None = None,
652
+ timeout_ms: int | None = None,
653
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueResponse:
654
+ return self.execute_unary(
655
+ request=request,
656
+ method=MethodInfo(
657
+ name="UnsafeReactivateAttributeValue",
658
+ service_name="policy.unsafe.UnsafeService",
659
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueRequest,
660
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeReactivateAttributeValueResponse,
661
+ idempotency_level=IdempotencyLevel.UNKNOWN,
662
+ ),
663
+ headers=headers,
664
+ timeout_ms=timeout_ms,
665
+ )
666
+
667
+ def unsafe_delete_attribute_value(
668
+ self,
669
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueRequest,
670
+ *,
671
+ headers: Headers | Mapping[str, str] | None = None,
672
+ timeout_ms: int | None = None,
673
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueResponse:
674
+ return self.execute_unary(
675
+ request=request,
676
+ method=MethodInfo(
677
+ name="UnsafeDeleteAttributeValue",
678
+ service_name="policy.unsafe.UnsafeService",
679
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueRequest,
680
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteAttributeValueResponse,
681
+ idempotency_level=IdempotencyLevel.UNKNOWN,
682
+ ),
683
+ headers=headers,
684
+ timeout_ms=timeout_ms,
685
+ )
686
+
687
+ def unsafe_delete_kas_key(
688
+ self,
689
+ request: policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyRequest,
690
+ *,
691
+ headers: Headers | Mapping[str, str] | None = None,
692
+ timeout_ms: int | None = None,
693
+ ) -> policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyResponse:
694
+ return self.execute_unary(
695
+ request=request,
696
+ method=MethodInfo(
697
+ name="UnsafeDeleteKasKey",
698
+ service_name="policy.unsafe.UnsafeService",
699
+ input=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyRequest,
700
+ output=policy_dot_unsafe_dot_unsafe__pb2.UnsafeDeleteKasKeyResponse,
701
+ idempotency_level=IdempotencyLevel.UNKNOWN,
702
+ ),
703
+ headers=headers,
704
+ timeout_ms=timeout_ms,
705
+ )