meshtrade 1.12.0__py3-none-any.whl → 1.19.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.
Potentially problematic release.
This version of meshtrade might be problematic. Click here for more details.
- meshtrade/common/grpc_client.py +47 -0
- meshtrade/iam/api_user/v1/__init__.py +2 -0
- meshtrade/iam/api_user/v1/api_user_pb2.py +7 -7
- meshtrade/iam/api_user/v1/service_meshpy.py +17 -0
- meshtrade/iam/api_user/v1/service_pb2.py +25 -17
- meshtrade/iam/api_user/v1/service_pb2.pyi +8 -0
- meshtrade/iam/api_user/v1/service_pb2_grpc.py +49 -0
- meshtrade/iam/role/v1/role_pb2.py +2 -2
- meshtrade/iam/role/v1/role_pb2.pyi +8 -0
- meshtrade/iam/user/v1/service_pb2.py +23 -23
- meshtrade/iam/user/v1/user_pb2.py +3 -3
- meshtrade/ledger/transaction/v1/__init__.py +23 -1
- meshtrade/ledger/transaction/v1/service_meshpy.py +175 -0
- meshtrade/ledger/transaction/v1/service_options_meshpy.py +65 -0
- meshtrade/ledger/transaction/v1/service_pb2.py +57 -0
- meshtrade/ledger/transaction/v1/service_pb2.pyi +33 -0
- meshtrade/ledger/transaction/v1/service_pb2_grpc.py +131 -0
- meshtrade/studio/instrument/v1/__init__.py +1 -1
- meshtrade/studio/instrument/v1/instrument_type_pb2.py +37 -0
- meshtrade/studio/instrument/v1/{type_pb2.pyi → instrument_type_pb2.pyi} +6 -0
- meshtrade/wallet/account/v1/__init__.py +0 -4
- meshtrade/wallet/account/v1/account_pb2.py +10 -10
- meshtrade/wallet/account/v1/account_pb2.pyi +3 -3
- meshtrade/wallet/account/v1/service_meshpy.py +0 -18
- meshtrade/wallet/account/v1/service_pb2.py +19 -27
- meshtrade/wallet/account/v1/service_pb2.pyi +0 -14
- meshtrade/wallet/account/v1/service_pb2_grpc.py +0 -49
- {meshtrade-1.12.0.dist-info → meshtrade-1.19.0.dist-info}/METADATA +1 -1
- {meshtrade-1.12.0.dist-info → meshtrade-1.19.0.dist-info}/RECORD +32 -27
- meshtrade/studio/instrument/v1/type_pb2.py +0 -37
- /meshtrade/studio/instrument/v1/{type_pb2_grpc.py → instrument_type_pb2_grpc.py} +0 -0
- {meshtrade-1.12.0.dist-info → meshtrade-1.19.0.dist-info}/WHEEL +0 -0
- {meshtrade-1.12.0.dist-info → meshtrade-1.19.0.dist-info}/top_level.txt +0 -0
meshtrade/common/grpc_client.py
CHANGED
|
@@ -200,3 +200,50 @@ class BaseGRPCClient(GRPCClient):
|
|
|
200
200
|
|
|
201
201
|
# Make the authenticated call
|
|
202
202
|
return method(request, metadata=metadata, timeout=timeout_seconds)
|
|
203
|
+
|
|
204
|
+
def _execute_streaming_method(self, method_name: str, request: Any, timeout: timedelta | None = None) -> Any:
|
|
205
|
+
"""Execute a server-side streaming gRPC method with authentication and error handling.
|
|
206
|
+
|
|
207
|
+
This is the streaming equivalent of _execute_method() - it handles validation,
|
|
208
|
+
authentication metadata injection, and timeout handling for server-side streaming calls.
|
|
209
|
+
|
|
210
|
+
Args:
|
|
211
|
+
method_name: The name of the gRPC stub streaming method to call
|
|
212
|
+
request: The request message
|
|
213
|
+
timeout: Optional timeout override
|
|
214
|
+
|
|
215
|
+
Returns:
|
|
216
|
+
Iterator yielding response messages from the stream
|
|
217
|
+
|
|
218
|
+
Raises:
|
|
219
|
+
grpc.RpcError: If the gRPC call fails
|
|
220
|
+
ValueError: If authentication credentials are missing or request validation fails
|
|
221
|
+
"""
|
|
222
|
+
# Validate request using protovalidate BEFORE initiating stream
|
|
223
|
+
try:
|
|
224
|
+
self._validator.validate(request)
|
|
225
|
+
except Exception as e:
|
|
226
|
+
raise ValueError(f"Request validation failed: {e}") from e
|
|
227
|
+
|
|
228
|
+
self._ensure_connected()
|
|
229
|
+
|
|
230
|
+
if not self._api_key or not self._group:
|
|
231
|
+
raise ValueError(
|
|
232
|
+
"API key and group are required for authentication. Provide them via constructor or set MESH_API_CREDENTIALS environment variable."
|
|
233
|
+
)
|
|
234
|
+
|
|
235
|
+
if self._stub is None:
|
|
236
|
+
raise RuntimeError("gRPC stub not initialized. Call _ensure_connected() first.")
|
|
237
|
+
|
|
238
|
+
# Get the streaming method from the stub
|
|
239
|
+
method = getattr(self._stub, method_name)
|
|
240
|
+
|
|
241
|
+
# Create authentication metadata (x-api-key, x-group headers)
|
|
242
|
+
metadata = create_auth_metadata(self._api_key, self._group)
|
|
243
|
+
|
|
244
|
+
# Use provided timeout or default
|
|
245
|
+
call_timeout = timeout or self._timeout
|
|
246
|
+
timeout_seconds = call_timeout.total_seconds()
|
|
247
|
+
|
|
248
|
+
# Make the authenticated streaming call with metadata
|
|
249
|
+
return method(request, metadata=metadata, timeout=timeout_seconds)
|
|
@@ -24,6 +24,7 @@ from .service_pb2 import (
|
|
|
24
24
|
GetApiUserRequest,
|
|
25
25
|
ListApiUsersRequest,
|
|
26
26
|
ListApiUsersResponse,
|
|
27
|
+
RevokeRoleFromAPIUserRequest,
|
|
27
28
|
SearchApiUsersRequest,
|
|
28
29
|
SearchApiUsersResponse,
|
|
29
30
|
)
|
|
@@ -87,6 +88,7 @@ __all__ = [
|
|
|
87
88
|
"GetApiUserRequest",
|
|
88
89
|
"ListApiUsersRequest",
|
|
89
90
|
"ListApiUsersResponse",
|
|
91
|
+
"RevokeRoleFromAPIUserRequest",
|
|
90
92
|
"SearchApiUsersRequest",
|
|
91
93
|
"SearchApiUsersResponse",
|
|
92
94
|
# Manual exports
|
|
@@ -25,7 +25,7 @@ _sym_db = _symbol_database.Default()
|
|
|
25
25
|
from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n(meshtrade/iam/api_user/v1/api_user.proto\x12\x19meshtrade.iam.api_user.v1\x1a\x1b\x62uf/validate/validate.proto\"\
|
|
28
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n(meshtrade/iam/api_user/v1/api_user.proto\x12\x19meshtrade.iam.api_user.v1\x1a\x1b\x62uf/validate/validate.proto\"\x97\x06\n\x07\x41PIUser\x12\xc2\x01\n\x04name\x18\x01 \x01(\tB\xad\x01\xbaH\xa9\x01\xba\x01\xa5\x01\n\x14name.format.optional\x12\x36name must be empty or in the format api_users/{ULIDv2}\x1aUsize(this) == 0 || this.matches(\'^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\')R\x04name\x12R\n\x05owner\x18\x02 \x01(\tB<\xbaH9r42/^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01!\xc8\x01\x01R\x05owner\x12\xb4\x01\n\x0c\x64isplay_name\x18\x04 \x01(\tB\x90\x01\xbaH\x8c\x01r\x05\x10\x01\x18\xff\x01\xba\x01\x7f\n\x15\x64isplay_name.required\x12\x41\x64isplay name is required and must be between 1 and 255 characters\x1a#size(this) > 0 && size(this) <= 255\xc8\x01\x01R\x0b\x64isplayName\x12\xbe\x01\n\x05state\x18\x05 \x01(\x0e\x32\'.meshtrade.iam.api_user.v1.APIUserStateB\x7f\xbaH|\x82\x01\x02\x10\x01\xba\x01t\n\x0bstate.valid\x12/state must be a valid APIUserState if specified\x1a\x34int(this) == 0 || (int(this) >= 1 && int(this) <= 2)R\x05state\x12\x62\n\x05roles\x18\x06 \x03(\tBL\xbaHI\x92\x01\x46\"DrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)R\x05roles\x12\x17\n\x07\x61pi_key\x18\x07 \x01(\tR\x06\x61piKey*f\n\x0c\x41PIUserState\x12\x1e\n\x1a\x41PI_USER_STATE_UNSPECIFIED\x10\x00\x12\x19\n\x15\x41PI_USER_STATE_ACTIVE\x10\x01\x12\x1b\n\x17\x41PI_USER_STATE_INACTIVE\x10\x02*\xa6\x01\n\rAPIUserAction\x12\x1f\n\x1b\x41PI_USER_ACTION_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x41PI_USER_ACTION_ACTIVATE\x10\x01\x12\x1e\n\x1a\x41PI_USER_ACTION_DEACTIVATE\x10\x02\x12\x1a\n\x16\x41PI_USER_ACTION_CREATE\x10\x03\x12\x1a\n\x16\x41PI_USER_ACTION_UPDATE\x10\x04\x42[\n co.meshtrade.api.iam.api_user.v1Z7github.com/meshtrade/api/go/iam/api_user/v1;api_user_v1b\x06proto3')
|
|
29
29
|
|
|
30
30
|
_globals = globals()
|
|
31
31
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
@@ -42,11 +42,11 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
|
42
42
|
_globals['_APIUSER'].fields_by_name['state']._loaded_options = None
|
|
43
43
|
_globals['_APIUSER'].fields_by_name['state']._serialized_options = b'\272H|\202\001\002\020\001\272\001t\n\013state.valid\022/state must be a valid APIUserState if specified\0324int(this) == 0 || (int(this) >= 1 && int(this) <= 2)'
|
|
44
44
|
_globals['_APIUSER'].fields_by_name['roles']._loaded_options = None
|
|
45
|
-
_globals['_APIUSER'].fields_by_name['roles']._serialized_options = b'\
|
|
46
|
-
_globals['_APIUSERSTATE']._serialized_start=
|
|
47
|
-
_globals['_APIUSERSTATE']._serialized_end=
|
|
48
|
-
_globals['_APIUSERACTION']._serialized_start=
|
|
49
|
-
_globals['_APIUSERACTION']._serialized_end=
|
|
45
|
+
_globals['_APIUSER'].fields_by_name['roles']._serialized_options = b'\272HI\222\001F\"DrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)'
|
|
46
|
+
_globals['_APIUSERSTATE']._serialized_start=894
|
|
47
|
+
_globals['_APIUSERSTATE']._serialized_end=996
|
|
48
|
+
_globals['_APIUSERACTION']._serialized_start=999
|
|
49
|
+
_globals['_APIUSERACTION']._serialized_end=1165
|
|
50
50
|
_globals['_APIUSER']._serialized_start=101
|
|
51
|
-
_globals['_APIUSER']._serialized_end=
|
|
51
|
+
_globals['_APIUSER']._serialized_end=892
|
|
52
52
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -26,6 +26,7 @@ GetApiUserByKeyHashRequest,
|
|
|
26
26
|
GetApiUserRequest,
|
|
27
27
|
ListApiUsersRequest,
|
|
28
28
|
ListApiUsersResponse,
|
|
29
|
+
RevokeRoleFromAPIUserRequest,
|
|
29
30
|
SearchApiUsersRequest,
|
|
30
31
|
SearchApiUsersResponse,
|
|
31
32
|
)
|
|
@@ -186,6 +187,22 @@ class ApiUserService(BaseGRPCClient):
|
|
|
186
187
|
"""
|
|
187
188
|
return self._execute_method("AssignRoleToAPIUser", request, timeout)
|
|
188
189
|
|
|
190
|
+
def revoke_role_from_apiuser(self, request: RevokeRoleFromAPIUserRequest, timeout: Optional[timedelta] = None) -> APIUser:
|
|
191
|
+
"""RevokeRoleFromAPIUser method.
|
|
192
|
+
|
|
193
|
+
Args:
|
|
194
|
+
request: The RevokeRoleFromAPIUser request message
|
|
195
|
+
timeout: Optional timeout override for this call
|
|
196
|
+
|
|
197
|
+
Returns:
|
|
198
|
+
The RevokeRoleFromAPIUser response message
|
|
199
|
+
|
|
200
|
+
Raises:
|
|
201
|
+
grpc.RpcError: If the gRPC call fails
|
|
202
|
+
ValueError: If authentication credentials are missing
|
|
203
|
+
"""
|
|
204
|
+
return self._execute_method("RevokeRoleFromAPIUser", request, timeout)
|
|
205
|
+
|
|
189
206
|
def list_api_users(self, request: ListApiUsersRequest, timeout: Optional[timedelta] = None) -> ListApiUsersResponse:
|
|
190
207
|
"""ListApiUsers method.
|
|
191
208
|
|
|
@@ -28,7 +28,7 @@ from meshtrade.iam.role.v1 import role_pb2 as meshtrade_dot_iam_dot_role_dot_v1_
|
|
|
28
28
|
from meshtrade.option.v1 import method_type_pb2 as meshtrade_dot_option_dot_v1_dot_method__type__pb2
|
|
29
29
|
|
|
30
30
|
|
|
31
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\'meshtrade/iam/api_user/v1/service.proto\x12\x19meshtrade.iam.api_user.v1\x1a\x1b\x62uf/validate/validate.proto\x1a(meshtrade/iam/api_user/v1/api_user.proto\x1a meshtrade/iam/role/v1/role.proto\x1a%meshtrade/option/v1/method_type.proto\"h\n\x11GetApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\"Z\n\x1aGetApiUserByKeyHashRequest\x12<\n\x08key_hash\x18\x01 \x01(\tB!\xbaH\x1er\x19\x32\x14^[A-Za-z0-9+/]{43}=$\x98\x01,\xc8\x01\x01R\x07keyHash\"]\n\x14\x43reateApiUserRequest\x12\x45\n\x08\x61pi_user\x18\x01 \x01(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserB\x06\xbaH\x03\xc8\x01\x01R\x07\x61piUser\"\xd1\x01\n\x1a\x41ssignRoleToAPIUserRequest\
|
|
31
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\'meshtrade/iam/api_user/v1/service.proto\x12\x19meshtrade.iam.api_user.v1\x1a\x1b\x62uf/validate/validate.proto\x1a(meshtrade/iam/api_user/v1/api_user.proto\x1a meshtrade/iam/role/v1/role.proto\x1a%meshtrade/option/v1/method_type.proto\"h\n\x11GetApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\"Z\n\x1aGetApiUserByKeyHashRequest\x12<\n\x08key_hash\x18\x01 \x01(\tB!\xbaH\x1er\x19\x32\x14^[A-Za-z0-9+/]{43}=$\x98\x01,\xc8\x01\x01R\x07keyHash\"]\n\x14\x43reateApiUserRequest\x12\x45\n\x08\x61pi_user\x18\x01 \x01(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserB\x06\xbaH\x03\xc8\x01\x01R\x07\x61piUser\"\xd1\x01\n\x1a\x41ssignRoleToAPIUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\x12^\n\x04role\x18\x04 \x01(\tBJ\xbaHGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)\xc8\x01\x01R\x04role\"\xd3\x01\n\x1cRevokeRoleFromAPIUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\x12^\n\x04role\x18\x02 \x01(\tBJ\xbaHGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)\xc8\x01\x01R\x04role\"\x15\n\x13ListApiUsersRequest\"W\n\x14ListApiUsersResponse\x12?\n\tapi_users\x18\x01 \x03(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserR\x08\x61piUsers\":\n\x15SearchApiUsersRequest\x12!\n\x0c\x64isplay_name\x18\x01 \x01(\tR\x0b\x64isplayName\"Y\n\x16SearchApiUsersResponse\x12?\n\tapi_users\x18\x01 \x03(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserR\x08\x61piUsers\"m\n\x16\x41\x63tivateApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\"o\n\x18\x44\x65\x61\x63tivateApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name2\xca\t\n\x0e\x41piUserService\x12z\n\nGetApiUser\x12,.meshtrade.iam.api_user.v1.GetApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x12x\n\rCreateApiUser\x12/.meshtrade.iam.api_user.v1.CreateApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x84\x01\n\x13\x41ssignRoleToAPIUser\x12\x35.meshtrade.iam.api_user.v1.AssignRoleToAPIUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x88\x01\n\x15RevokeRoleFromAPIUser\x12\x37.meshtrade.iam.api_user.v1.RevokeRoleFromAPIUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x8b\x01\n\x0cListApiUsers\x12..meshtrade.iam.api_user.v1.ListApiUsersRequest\x1a/.meshtrade.iam.api_user.v1.ListApiUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x12\x91\x01\n\x0eSearchApiUsers\x12\x30.meshtrade.iam.api_user.v1.SearchApiUsersRequest\x1a\x31.meshtrade.iam.api_user.v1.SearchApiUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x12|\n\x0f\x41\x63tivateApiUser\x12\x31.meshtrade.iam.api_user.v1.ActivateApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x80\x01\n\x11\x44\x65\x61\x63tivateApiUser\x12\x33.meshtrade.iam.api_user.v1.DeactivateApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x8c\x01\n\x13GetApiUserByKeyHash\x12\x35.meshtrade.iam.api_user.v1.GetApiUserByKeyHashRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x42[\n co.meshtrade.api.iam.api_user.v1Z7github.com/meshtrade/api/go/iam/api_user/v1;api_user_v1b\x06proto3')
|
|
32
32
|
|
|
33
33
|
_globals = globals()
|
|
34
34
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
@@ -43,9 +43,13 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
|
43
43
|
_globals['_CREATEAPIUSERREQUEST'].fields_by_name['api_user']._loaded_options = None
|
|
44
44
|
_globals['_CREATEAPIUSERREQUEST'].fields_by_name['api_user']._serialized_options = b'\272H\003\310\001\001'
|
|
45
45
|
_globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['name']._loaded_options = None
|
|
46
|
-
_globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['name']._serialized_options = b'\
|
|
46
|
+
_globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001$\310\001\001'
|
|
47
47
|
_globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['role']._loaded_options = None
|
|
48
|
-
_globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['role']._serialized_options = b'\
|
|
48
|
+
_globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['role']._serialized_options = b'\272HGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)\310\001\001'
|
|
49
|
+
_globals['_REVOKEROLEFROMAPIUSERREQUEST'].fields_by_name['name']._loaded_options = None
|
|
50
|
+
_globals['_REVOKEROLEFROMAPIUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001$\310\001\001'
|
|
51
|
+
_globals['_REVOKEROLEFROMAPIUSERREQUEST'].fields_by_name['role']._loaded_options = None
|
|
52
|
+
_globals['_REVOKEROLEFROMAPIUSERREQUEST'].fields_by_name['role']._serialized_options = b'\272HGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)\310\001\001'
|
|
49
53
|
_globals['_ACTIVATEAPIUSERREQUEST'].fields_by_name['name']._loaded_options = None
|
|
50
54
|
_globals['_ACTIVATEAPIUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001$\310\001\001'
|
|
51
55
|
_globals['_DEACTIVATEAPIUSERREQUEST'].fields_by_name['name']._loaded_options = None
|
|
@@ -56,6 +60,8 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
|
56
60
|
_globals['_APIUSERSERVICE'].methods_by_name['CreateApiUser']._serialized_options = b'\240\265\030\002\252\265\030\n\n\010\300\215\267\001\302\215\267\001'
|
|
57
61
|
_globals['_APIUSERSERVICE'].methods_by_name['AssignRoleToAPIUser']._loaded_options = None
|
|
58
62
|
_globals['_APIUSERSERVICE'].methods_by_name['AssignRoleToAPIUser']._serialized_options = b'\240\265\030\002\252\265\030\n\n\010\300\215\267\001\302\215\267\001'
|
|
63
|
+
_globals['_APIUSERSERVICE'].methods_by_name['RevokeRoleFromAPIUser']._loaded_options = None
|
|
64
|
+
_globals['_APIUSERSERVICE'].methods_by_name['RevokeRoleFromAPIUser']._serialized_options = b'\240\265\030\002\252\265\030\n\n\010\300\215\267\001\302\215\267\001'
|
|
59
65
|
_globals['_APIUSERSERVICE'].methods_by_name['ListApiUsers']._loaded_options = None
|
|
60
66
|
_globals['_APIUSERSERVICE'].methods_by_name['ListApiUsers']._serialized_options = b'\240\265\030\001\252\265\030\022\n\020\300\215\267\001\301\215\267\001\302\215\267\001\303\215\267\001'
|
|
61
67
|
_globals['_APIUSERSERVICE'].methods_by_name['SearchApiUsers']._loaded_options = None
|
|
@@ -74,18 +80,20 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
|
74
80
|
_globals['_CREATEAPIUSERREQUEST']._serialized_end=505
|
|
75
81
|
_globals['_ASSIGNROLETOAPIUSERREQUEST']._serialized_start=508
|
|
76
82
|
_globals['_ASSIGNROLETOAPIUSERREQUEST']._serialized_end=717
|
|
77
|
-
_globals['
|
|
78
|
-
_globals['
|
|
79
|
-
_globals['
|
|
80
|
-
_globals['
|
|
81
|
-
_globals['
|
|
82
|
-
_globals['
|
|
83
|
-
_globals['
|
|
84
|
-
_globals['
|
|
85
|
-
_globals['
|
|
86
|
-
_globals['
|
|
87
|
-
_globals['
|
|
88
|
-
_globals['
|
|
89
|
-
_globals['
|
|
90
|
-
_globals['
|
|
83
|
+
_globals['_REVOKEROLEFROMAPIUSERREQUEST']._serialized_start=720
|
|
84
|
+
_globals['_REVOKEROLEFROMAPIUSERREQUEST']._serialized_end=931
|
|
85
|
+
_globals['_LISTAPIUSERSREQUEST']._serialized_start=933
|
|
86
|
+
_globals['_LISTAPIUSERSREQUEST']._serialized_end=954
|
|
87
|
+
_globals['_LISTAPIUSERSRESPONSE']._serialized_start=956
|
|
88
|
+
_globals['_LISTAPIUSERSRESPONSE']._serialized_end=1043
|
|
89
|
+
_globals['_SEARCHAPIUSERSREQUEST']._serialized_start=1045
|
|
90
|
+
_globals['_SEARCHAPIUSERSREQUEST']._serialized_end=1103
|
|
91
|
+
_globals['_SEARCHAPIUSERSRESPONSE']._serialized_start=1105
|
|
92
|
+
_globals['_SEARCHAPIUSERSRESPONSE']._serialized_end=1194
|
|
93
|
+
_globals['_ACTIVATEAPIUSERREQUEST']._serialized_start=1196
|
|
94
|
+
_globals['_ACTIVATEAPIUSERREQUEST']._serialized_end=1305
|
|
95
|
+
_globals['_DEACTIVATEAPIUSERREQUEST']._serialized_start=1307
|
|
96
|
+
_globals['_DEACTIVATEAPIUSERREQUEST']._serialized_end=1418
|
|
97
|
+
_globals['_APIUSERSERVICE']._serialized_start=1421
|
|
98
|
+
_globals['_APIUSERSERVICE']._serialized_end=2647
|
|
91
99
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -36,6 +36,14 @@ class AssignRoleToAPIUserRequest(_message.Message):
|
|
|
36
36
|
role: str
|
|
37
37
|
def __init__(self, name: _Optional[str] = ..., role: _Optional[str] = ...) -> None: ...
|
|
38
38
|
|
|
39
|
+
class RevokeRoleFromAPIUserRequest(_message.Message):
|
|
40
|
+
__slots__ = ("name", "role")
|
|
41
|
+
NAME_FIELD_NUMBER: _ClassVar[int]
|
|
42
|
+
ROLE_FIELD_NUMBER: _ClassVar[int]
|
|
43
|
+
name: str
|
|
44
|
+
role: str
|
|
45
|
+
def __init__(self, name: _Optional[str] = ..., role: _Optional[str] = ...) -> None: ...
|
|
46
|
+
|
|
39
47
|
class ListApiUsersRequest(_message.Message):
|
|
40
48
|
__slots__ = ()
|
|
41
49
|
def __init__(self) -> None: ...
|
|
@@ -42,6 +42,11 @@ class ApiUserServiceStub(object):
|
|
|
42
42
|
request_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.AssignRoleToAPIUserRequest.SerializeToString,
|
|
43
43
|
response_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.FromString,
|
|
44
44
|
_registered_method=True)
|
|
45
|
+
self.RevokeRoleFromAPIUser = channel.unary_unary(
|
|
46
|
+
'/meshtrade.iam.api_user.v1.ApiUserService/RevokeRoleFromAPIUser',
|
|
47
|
+
request_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.RevokeRoleFromAPIUserRequest.SerializeToString,
|
|
48
|
+
response_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.FromString,
|
|
49
|
+
_registered_method=True)
|
|
45
50
|
self.ListApiUsers = channel.unary_unary(
|
|
46
51
|
'/meshtrade.iam.api_user.v1.ApiUserService/ListApiUsers',
|
|
47
52
|
request_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.ListApiUsersRequest.SerializeToString,
|
|
@@ -115,6 +120,18 @@ class ApiUserServiceServicer(object):
|
|
|
115
120
|
context.set_details('Method not implemented!')
|
|
116
121
|
raise NotImplementedError('Method not implemented!')
|
|
117
122
|
|
|
123
|
+
def RevokeRoleFromAPIUser(self, request, context):
|
|
124
|
+
"""
|
|
125
|
+
Revokes a role from an existing API user within the authenticated group context.
|
|
126
|
+
|
|
127
|
+
The role revocation removes the permissions associated with that role from
|
|
128
|
+
the API user within the group hierarchy. The API user will no longer be able
|
|
129
|
+
to perform operations that require the revoked role.
|
|
130
|
+
"""
|
|
131
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
132
|
+
context.set_details('Method not implemented!')
|
|
133
|
+
raise NotImplementedError('Method not implemented!')
|
|
134
|
+
|
|
118
135
|
def ListApiUsers(self, request, context):
|
|
119
136
|
"""
|
|
120
137
|
Lists all API users in the authenticated group context.
|
|
@@ -188,6 +205,11 @@ def add_ApiUserServiceServicer_to_server(servicer, server):
|
|
|
188
205
|
request_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.AssignRoleToAPIUserRequest.FromString,
|
|
189
206
|
response_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.SerializeToString,
|
|
190
207
|
),
|
|
208
|
+
'RevokeRoleFromAPIUser': grpc.unary_unary_rpc_method_handler(
|
|
209
|
+
servicer.RevokeRoleFromAPIUser,
|
|
210
|
+
request_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.RevokeRoleFromAPIUserRequest.FromString,
|
|
211
|
+
response_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.SerializeToString,
|
|
212
|
+
),
|
|
191
213
|
'ListApiUsers': grpc.unary_unary_rpc_method_handler(
|
|
192
214
|
servicer.ListApiUsers,
|
|
193
215
|
request_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.ListApiUsersRequest.FromString,
|
|
@@ -317,6 +339,33 @@ class ApiUserService(object):
|
|
|
317
339
|
metadata,
|
|
318
340
|
_registered_method=True)
|
|
319
341
|
|
|
342
|
+
@staticmethod
|
|
343
|
+
def RevokeRoleFromAPIUser(request,
|
|
344
|
+
target,
|
|
345
|
+
options=(),
|
|
346
|
+
channel_credentials=None,
|
|
347
|
+
call_credentials=None,
|
|
348
|
+
insecure=False,
|
|
349
|
+
compression=None,
|
|
350
|
+
wait_for_ready=None,
|
|
351
|
+
timeout=None,
|
|
352
|
+
metadata=None):
|
|
353
|
+
return grpc.experimental.unary_unary(
|
|
354
|
+
request,
|
|
355
|
+
target,
|
|
356
|
+
'/meshtrade.iam.api_user.v1.ApiUserService/RevokeRoleFromAPIUser',
|
|
357
|
+
meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.RevokeRoleFromAPIUserRequest.SerializeToString,
|
|
358
|
+
meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.FromString,
|
|
359
|
+
options,
|
|
360
|
+
channel_credentials,
|
|
361
|
+
insecure,
|
|
362
|
+
call_credentials,
|
|
363
|
+
compression,
|
|
364
|
+
wait_for_ready,
|
|
365
|
+
timeout,
|
|
366
|
+
metadata,
|
|
367
|
+
_registered_method=True)
|
|
368
|
+
|
|
320
369
|
@staticmethod
|
|
321
370
|
def ListApiUsers(request,
|
|
322
371
|
target,
|
|
@@ -25,7 +25,7 @@ _sym_db = _symbol_database.Default()
|
|
|
25
25
|
from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n meshtrade/iam/role/v1/role.proto\x12\x15meshtrade.iam.role.v1\x1a google/protobuf/descriptor.proto\"=\n\x08RoleList\x12\x31\n\x05roles\x18\x01 \x03(\x0e\x32\x1b.meshtrade.iam.role.v1.RoleR\x05roles*\
|
|
28
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n meshtrade/iam/role/v1/role.proto\x12\x15meshtrade.iam.role.v1\x1a google/protobuf/descriptor.proto\"=\n\x08RoleList\x12\x31\n\x05roles\x18\x01 \x03(\x0e\x32\x1b.meshtrade.iam.role.v1.RoleR\x05roles*\xee\x06\n\x04Role\x12\x14\n\x10ROLE_UNSPECIFIED\x10\x00\x12\x17\n\x11ROLE_WALLET_ADMIN\x10\xc0\x84=\x12\x18\n\x12ROLE_WALLET_VIEWER\x10\xc1\x84=\x12\x1f\n\x19ROLE_WALLET_ACCOUNT_ADMIN\x10\xc2\x84=\x12 \n\x1aROLE_WALLET_ACCOUNT_VIEWER\x10\xc3\x84=\x12\x1b\n\x15ROLE_COMPLIANCE_ADMIN\x10\x80\x89z\x12\x1c\n\x16ROLE_COMPLIANCE_VIEWER\x10\x81\x89z\x12\"\n\x1cROLE_COMPLIANCE_CLIENT_ADMIN\x10\x82\x89z\x12#\n\x1dROLE_COMPLIANCE_CLIENT_VIEWER\x10\x83\x89z\x12\x15\n\x0eROLE_IAM_ADMIN\x10\xc0\x8d\xb7\x01\x12\x16\n\x0fROLE_IAM_VIEWER\x10\xc1\x8d\xb7\x01\x12\x1e\n\x17ROLE_IAM_API_USER_ADMIN\x10\xc2\x8d\xb7\x01\x12\x1f\n\x18ROLE_IAM_API_USER_VIEWER\x10\xc3\x8d\xb7\x01\x12\x1b\n\x14ROLE_IAM_GROUP_ADMIN\x10\xc4\x8d\xb7\x01\x12\x1c\n\x15ROLE_IAM_GROUP_VIEWER\x10\xc5\x8d\xb7\x01\x12\x1a\n\x13ROLE_IAM_USER_ADMIN\x10\xc6\x8d\xb7\x01\x12\x1b\n\x14ROLE_IAM_USER_VIEWER\x10\xc7\x8d\xb7\x01\x12\x18\n\x11ROLE_STUDIO_ADMIN\x10\x80\x92\xf4\x01\x12\x19\n\x12ROLE_STUDIO_VIEWER\x10\x81\x92\xf4\x01\x12#\n\x1cROLE_STUDIO_INSTRUMENT_ADMIN\x10\x82\x92\xf4\x01\x12$\n\x1dROLE_STUDIO_INSTRUMENT_VIEWER\x10\x83\x92\xf4\x01\x12\x19\n\x12ROLE_TRADING_ADMIN\x10\xc0\x96\xb1\x02\x12\x1a\n\x13ROLE_TRADING_VIEWER\x10\xc1\x96\xb1\x02\x12\x1b\n\x14ROLE_REPORTING_ADMIN\x10\x80\x9b\xee\x02\x12\x1c\n\x15ROLE_REPORTING_VIEWER\x10\x81\x9b\xee\x02\x12\x18\n\x11ROLE_LEDGER_ADMIN\x10\xc0\x9f\xab\x03\x12\x19\n\x12ROLE_LEDGER_VIEWER\x10\xc1\x9f\xab\x03\x12$\n\x1dROLE_LEDGER_TRANSACTION_ADMIN\x10\xc2\x9f\xab\x03\x12%\n\x1eROLE_LEDGER_TRANSACTION_VIEWER\x10\xc3\x9f\xab\x03:g\n\rmessage_roles\x12\x1f.google.protobuf.MessageOptions\x18\xd6\x86\x03 \x01(\x0b\x32\x1f.meshtrade.iam.role.v1.RoleListR\x0cmessageRoles:W\n\x05roles\x12\x1e.google.protobuf.MethodOptions\x18\xd5\x86\x03 \x01(\x0b\x32\x1f.meshtrade.iam.role.v1.RoleListR\x05rolesBO\n\x1c\x63o.meshtrade.api.iam.role.v1Z/github.com/meshtrade/api/go/iam/role/v1;role_v1b\x06proto3')
|
|
29
29
|
|
|
30
30
|
_globals = globals()
|
|
31
31
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
@@ -34,7 +34,7 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
|
34
34
|
_globals['DESCRIPTOR']._loaded_options = None
|
|
35
35
|
_globals['DESCRIPTOR']._serialized_options = b'\n\034co.meshtrade.api.iam.role.v1Z/github.com/meshtrade/api/go/iam/role/v1;role_v1'
|
|
36
36
|
_globals['_ROLE']._serialized_start=157
|
|
37
|
-
_globals['_ROLE']._serialized_end=
|
|
37
|
+
_globals['_ROLE']._serialized_end=1035
|
|
38
38
|
_globals['_ROLELIST']._serialized_start=93
|
|
39
39
|
_globals['_ROLELIST']._serialized_end=154
|
|
40
40
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -35,6 +35,10 @@ class Role(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
35
35
|
ROLE_TRADING_VIEWER: _ClassVar[Role]
|
|
36
36
|
ROLE_REPORTING_ADMIN: _ClassVar[Role]
|
|
37
37
|
ROLE_REPORTING_VIEWER: _ClassVar[Role]
|
|
38
|
+
ROLE_LEDGER_ADMIN: _ClassVar[Role]
|
|
39
|
+
ROLE_LEDGER_VIEWER: _ClassVar[Role]
|
|
40
|
+
ROLE_LEDGER_TRANSACTION_ADMIN: _ClassVar[Role]
|
|
41
|
+
ROLE_LEDGER_TRANSACTION_VIEWER: _ClassVar[Role]
|
|
38
42
|
ROLE_UNSPECIFIED: Role
|
|
39
43
|
ROLE_WALLET_ADMIN: Role
|
|
40
44
|
ROLE_WALLET_VIEWER: Role
|
|
@@ -60,6 +64,10 @@ ROLE_TRADING_ADMIN: Role
|
|
|
60
64
|
ROLE_TRADING_VIEWER: Role
|
|
61
65
|
ROLE_REPORTING_ADMIN: Role
|
|
62
66
|
ROLE_REPORTING_VIEWER: Role
|
|
67
|
+
ROLE_LEDGER_ADMIN: Role
|
|
68
|
+
ROLE_LEDGER_VIEWER: Role
|
|
69
|
+
ROLE_LEDGER_TRANSACTION_ADMIN: Role
|
|
70
|
+
ROLE_LEDGER_TRANSACTION_VIEWER: Role
|
|
63
71
|
MESSAGE_ROLES_FIELD_NUMBER: _ClassVar[int]
|
|
64
72
|
message_roles: _descriptor.FieldDescriptor
|
|
65
73
|
ROLES_FIELD_NUMBER: _ClassVar[int]
|
|
@@ -29,7 +29,7 @@ from meshtrade.option.v1 import method_type_pb2 as meshtrade_dot_option_dot_v1_d
|
|
|
29
29
|
from meshtrade.type.v1 import sorting_pb2 as meshtrade_dot_type_dot_v1_dot_sorting__pb2
|
|
30
30
|
|
|
31
31
|
|
|
32
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#meshtrade/iam/user/v1/service.proto\x12\x15meshtrade.iam.user.v1\x1a\x1b\x62uf/validate/validate.proto\x1a meshtrade/iam/role/v1/role.proto\x1a meshtrade/iam/user/v1/user.proto\x1a%meshtrade/option/v1/method_type.proto\x1a\x1fmeshtrade/type/v1/sorting.proto\"\
|
|
32
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#meshtrade/iam/user/v1/service.proto\x12\x15meshtrade.iam.user.v1\x1a\x1b\x62uf/validate/validate.proto\x1a meshtrade/iam/role/v1/role.proto\x1a meshtrade/iam/user/v1/user.proto\x1a%meshtrade/option/v1/method_type.proto\x1a\x1fmeshtrade/type/v1/sorting.proto\"\xc7\x01\n\x17\x41ssignRoleToUserRequest\x12L\n\x04name\x18\x01 \x01(\tB8\xbaH5r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01 R\x04name\x12^\n\x04role\x18\x04 \x01(\tBJ\xbaHGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)\xc8\x01\x01R\x04role\"a\n\x0eGetUserRequest\x12O\n\x04name\x18\x01 \x01(\tB;\xbaH8r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01 \xc8\x01\x01R\x04name\"\x94\x02\n\x10ListUsersRequest\x12I\n\x07sorting\x18\x01 \x01(\x0b\x32/.meshtrade.iam.user.v1.ListUsersRequest.SortingR\x07sorting\x1a\xb4\x01\n\x07Sorting\x12r\n\x05\x66ield\x18\x01 \x01(\tB\\\xbaHYr\tR\x00R\x05\x65mail\xba\x01K\n\x0b\x66ield.valid\x12%field must be one of: email, or empty\x1a\x15this in [\'\', \'email\']R\x05\x66ield\x12\x35\n\x05order\x18\x02 \x01(\x0e\x32\x1f.meshtrade.type.v1.SortingOrderR\x05order\"F\n\x11ListUsersResponse\x12\x31\n\x05users\x18\x01 \x03(\x0b\x32\x1b.meshtrade.iam.user.v1.UserR\x05users\"\xae\x02\n\x12SearchUsersRequest\x12\x14\n\x05\x65mail\x18\x01 \x01(\tR\x05\x65mail\x12K\n\x07sorting\x18\x02 \x01(\x0b\x32\x31.meshtrade.iam.user.v1.SearchUsersRequest.SortingR\x07sorting\x1a\xb4\x01\n\x07Sorting\x12r\n\x05\x66ield\x18\x01 \x01(\tB\\\xbaHYr\tR\x00R\x05\x65mail\xba\x01K\n\x0b\x66ield.valid\x12%field must be one of: email, or empty\x1a\x15this in [\'\', \'email\']R\x05\x66ield\x12\x35\n\x05order\x18\x02 \x01(\x0e\x32\x1f.meshtrade.type.v1.SortingOrderR\x05order\"H\n\x13SearchUsersResponse\x12\x31\n\x05users\x18\x01 \x03(\x0b\x32\x1b.meshtrade.iam.user.v1.UserR\x05users\"L\n\x11\x43reateUserRequest\x12\x37\n\x04user\x18\x01 \x01(\x0b\x32\x1b.meshtrade.iam.user.v1.UserB\x06\xbaH\x03\xc8\x01\x01R\x04user\"L\n\x11UpdateUserRequest\x12\x37\n\x04user\x18\x01 \x01(\x0b\x32\x1b.meshtrade.iam.user.v1.UserB\x06\xbaH\x03\xc8\x01\x01R\x04user2\xbe\x05\n\x0bUserService\x12s\n\x10\x41ssignRoleToUser\x12..meshtrade.iam.user.v1.AssignRoleToUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc6\x8d\xb7\x01\x12i\n\x07GetUser\x12%.meshtrade.iam.user.v1.GetUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc6\x8d\xb7\x01\xc7\x8d\xb7\x01\x12z\n\tListUsers\x12\'.meshtrade.iam.user.v1.ListUsersRequest\x1a(.meshtrade.iam.user.v1.ListUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc6\x8d\xb7\x01\xc7\x8d\xb7\x01\x12\x80\x01\n\x0bSearchUsers\x12).meshtrade.iam.user.v1.SearchUsersRequest\x1a*.meshtrade.iam.user.v1.SearchUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc6\x8d\xb7\x01\xc7\x8d\xb7\x01\x12g\n\nCreateUser\x12(.meshtrade.iam.user.v1.CreateUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc6\x8d\xb7\x01\x12g\n\nUpdateUser\x12(.meshtrade.iam.user.v1.UpdateUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc6\x8d\xb7\x01\x42O\n\x1c\x63o.meshtrade.api.iam.user.v1Z/github.com/meshtrade/api/go/iam/user/v1;user_v1b\x06proto3')
|
|
33
33
|
|
|
34
34
|
_globals = globals()
|
|
35
35
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
@@ -40,7 +40,7 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
|
40
40
|
_globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['name']._loaded_options = None
|
|
41
41
|
_globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H5r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001 '
|
|
42
42
|
_globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['role']._loaded_options = None
|
|
43
|
-
_globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['role']._serialized_options = b'\
|
|
43
|
+
_globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['role']._serialized_options = b'\272HGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)\310\001\001'
|
|
44
44
|
_globals['_GETUSERREQUEST'].fields_by_name['name']._loaded_options = None
|
|
45
45
|
_globals['_GETUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H8r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001 \310\001\001'
|
|
46
46
|
_globals['_LISTUSERSREQUEST_SORTING'].fields_by_name['field']._loaded_options = None
|
|
@@ -64,25 +64,25 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
|
64
64
|
_globals['_USERSERVICE'].methods_by_name['UpdateUser']._loaded_options = None
|
|
65
65
|
_globals['_USERSERVICE'].methods_by_name['UpdateUser']._serialized_options = b'\240\265\030\002\252\265\030\n\n\010\300\215\267\001\306\215\267\001'
|
|
66
66
|
_globals['_ASSIGNROLETOUSERREQUEST']._serialized_start=232
|
|
67
|
-
_globals['_ASSIGNROLETOUSERREQUEST']._serialized_end=
|
|
68
|
-
_globals['_GETUSERREQUEST']._serialized_start=
|
|
69
|
-
_globals['_GETUSERREQUEST']._serialized_end=
|
|
70
|
-
_globals['_LISTUSERSREQUEST']._serialized_start=
|
|
71
|
-
_globals['_LISTUSERSREQUEST']._serialized_end=
|
|
72
|
-
_globals['_LISTUSERSREQUEST_SORTING']._serialized_start=
|
|
73
|
-
_globals['_LISTUSERSREQUEST_SORTING']._serialized_end=
|
|
74
|
-
_globals['_LISTUSERSRESPONSE']._serialized_start=
|
|
75
|
-
_globals['_LISTUSERSRESPONSE']._serialized_end=
|
|
76
|
-
_globals['_SEARCHUSERSREQUEST']._serialized_start=
|
|
77
|
-
_globals['_SEARCHUSERSREQUEST']._serialized_end=
|
|
78
|
-
_globals['_SEARCHUSERSREQUEST_SORTING']._serialized_start=
|
|
79
|
-
_globals['_SEARCHUSERSREQUEST_SORTING']._serialized_end=
|
|
80
|
-
_globals['_SEARCHUSERSRESPONSE']._serialized_start=
|
|
81
|
-
_globals['_SEARCHUSERSRESPONSE']._serialized_end=
|
|
82
|
-
_globals['_CREATEUSERREQUEST']._serialized_start=
|
|
83
|
-
_globals['_CREATEUSERREQUEST']._serialized_end=
|
|
84
|
-
_globals['_UPDATEUSERREQUEST']._serialized_start=
|
|
85
|
-
_globals['_UPDATEUSERREQUEST']._serialized_end=
|
|
86
|
-
_globals['_USERSERVICE']._serialized_start=
|
|
87
|
-
_globals['_USERSERVICE']._serialized_end=
|
|
67
|
+
_globals['_ASSIGNROLETOUSERREQUEST']._serialized_end=431
|
|
68
|
+
_globals['_GETUSERREQUEST']._serialized_start=433
|
|
69
|
+
_globals['_GETUSERREQUEST']._serialized_end=530
|
|
70
|
+
_globals['_LISTUSERSREQUEST']._serialized_start=533
|
|
71
|
+
_globals['_LISTUSERSREQUEST']._serialized_end=809
|
|
72
|
+
_globals['_LISTUSERSREQUEST_SORTING']._serialized_start=629
|
|
73
|
+
_globals['_LISTUSERSREQUEST_SORTING']._serialized_end=809
|
|
74
|
+
_globals['_LISTUSERSRESPONSE']._serialized_start=811
|
|
75
|
+
_globals['_LISTUSERSRESPONSE']._serialized_end=881
|
|
76
|
+
_globals['_SEARCHUSERSREQUEST']._serialized_start=884
|
|
77
|
+
_globals['_SEARCHUSERSREQUEST']._serialized_end=1186
|
|
78
|
+
_globals['_SEARCHUSERSREQUEST_SORTING']._serialized_start=629
|
|
79
|
+
_globals['_SEARCHUSERSREQUEST_SORTING']._serialized_end=809
|
|
80
|
+
_globals['_SEARCHUSERSRESPONSE']._serialized_start=1188
|
|
81
|
+
_globals['_SEARCHUSERSRESPONSE']._serialized_end=1260
|
|
82
|
+
_globals['_CREATEUSERREQUEST']._serialized_start=1262
|
|
83
|
+
_globals['_CREATEUSERREQUEST']._serialized_end=1338
|
|
84
|
+
_globals['_UPDATEUSERREQUEST']._serialized_start=1340
|
|
85
|
+
_globals['_UPDATEUSERREQUEST']._serialized_end=1416
|
|
86
|
+
_globals['_USERSERVICE']._serialized_start=1419
|
|
87
|
+
_globals['_USERSERVICE']._serialized_end=2121
|
|
88
88
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -25,7 +25,7 @@ _sym_db = _symbol_database.Default()
|
|
|
25
25
|
from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n meshtrade/iam/user/v1/user.proto\x12\x15meshtrade.iam.user.v1\x1a\x1b\x62uf/validate/validate.proto\"\
|
|
28
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n meshtrade/iam/user/v1/user.proto\x12\x15meshtrade.iam.user.v1\x1a\x1b\x62uf/validate/validate.proto\"\x9d\x03\n\x04User\x12\xba\x01\n\x04name\x18\x01 \x01(\tB\xa5\x01\xbaH\xa1\x01\xba\x01\x9d\x01\n\x14name.format.optional\x12\x32name must be empty or in the format users/{ULIDv2}\x1aQsize(this) == 0 || this.matches(\'^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\')R\x04name\x12R\n\x05owner\x18\x02 \x01(\tB<\xbaH9r42/^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01!\xc8\x01\x01R\x05owner\x12 \n\x05\x65mail\x18\x04 \x01(\tB\n\xbaH\x07r\x02`\x01\xc8\x01\x01R\x05\x65mail\x12\x62\n\x05roles\x18\x06 \x03(\tBL\xbaHI\x92\x01\x46\"DrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)R\x05rolesBO\n\x1c\x63o.meshtrade.api.iam.user.v1Z/github.com/meshtrade/api/go/iam/user/v1;user_v1b\x06proto3')
|
|
29
29
|
|
|
30
30
|
_globals = globals()
|
|
31
31
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
@@ -40,7 +40,7 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
|
40
40
|
_globals['_USER'].fields_by_name['email']._loaded_options = None
|
|
41
41
|
_globals['_USER'].fields_by_name['email']._serialized_options = b'\272H\007r\002`\001\310\001\001'
|
|
42
42
|
_globals['_USER'].fields_by_name['roles']._loaded_options = None
|
|
43
|
-
_globals['_USER'].fields_by_name['roles']._serialized_options = b'\
|
|
43
|
+
_globals['_USER'].fields_by_name['roles']._serialized_options = b'\272HI\222\001F\"DrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)'
|
|
44
44
|
_globals['_USER']._serialized_start=89
|
|
45
|
-
_globals['_USER']._serialized_end=
|
|
45
|
+
_globals['_USER']._serialized_end=502
|
|
46
46
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -13,8 +13,22 @@
|
|
|
13
13
|
# ===================================================================
|
|
14
14
|
|
|
15
15
|
# Generated protobuf imports
|
|
16
|
-
from .transaction_action_pb2 import TransactionAction
|
|
17
16
|
from .transaction_state_pb2 import TransactionState
|
|
17
|
+
from .service_pb2 import (
|
|
18
|
+
GetTransactionStateRequest,
|
|
19
|
+
GetTransactionStateResponse,
|
|
20
|
+
MonitorTransactionStateRequest,
|
|
21
|
+
MonitorTransactionStateResponse,
|
|
22
|
+
)
|
|
23
|
+
from .transaction_action_pb2 import TransactionAction
|
|
24
|
+
|
|
25
|
+
# Generated service imports
|
|
26
|
+
from .service_meshpy import (
|
|
27
|
+
TransactionService,
|
|
28
|
+
TransactionServiceGRPCClient,
|
|
29
|
+
TransactionServiceGRPCClientInterface,
|
|
30
|
+
)
|
|
31
|
+
from .service_options_meshpy import ClientOptions
|
|
18
32
|
|
|
19
33
|
# ===================================================================
|
|
20
34
|
# END OF AUTO-GENERATED SECTION
|
|
@@ -36,6 +50,14 @@ from .transaction_state_pb2 import TransactionState
|
|
|
36
50
|
# Combined auto-generated and manual exports
|
|
37
51
|
__all__ = [
|
|
38
52
|
# Generated exports
|
|
53
|
+
"ClientOptions",
|
|
54
|
+
"GetTransactionStateRequest",
|
|
55
|
+
"GetTransactionStateResponse",
|
|
56
|
+
"MonitorTransactionStateRequest",
|
|
57
|
+
"MonitorTransactionStateResponse",
|
|
39
58
|
"TransactionAction",
|
|
59
|
+
"TransactionService",
|
|
60
|
+
"TransactionServiceGRPCClient",
|
|
61
|
+
"TransactionServiceGRPCClientInterface",
|
|
40
62
|
"TransactionState",
|
|
41
63
|
]
|