diff options
author | neksard <neksard@yandex-team.ru> | 2022-02-10 16:45:23 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:45:23 +0300 |
commit | 8f7cf138264e0caa318144bf8a2c950e0b0a8593 (patch) | |
tree | 83bf5c8c8047c42d8475e6095df90ccdc3d1b57f /contrib/libs/grpc/src/python/grpcio_status/grpc_status | |
parent | d3a398281c6fd1d3672036cb2d63f842d2cb28c5 (diff) | |
download | ydb-8f7cf138264e0caa318144bf8a2c950e0b0a8593.tar.gz |
Restoring authorship annotation for <neksard@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/grpc/src/python/grpcio_status/grpc_status')
-rw-r--r-- | contrib/libs/grpc/src/python/grpcio_status/grpc_status/__init__.py | 26 | ||||
-rw-r--r-- | contrib/libs/grpc/src/python/grpcio_status/grpc_status/rpc_status.py | 132 |
2 files changed, 79 insertions, 79 deletions
diff --git a/contrib/libs/grpc/src/python/grpcio_status/grpc_status/__init__.py b/contrib/libs/grpc/src/python/grpcio_status/grpc_status/__init__.py index 38fdfc9c5c..10b401503b 100644 --- a/contrib/libs/grpc/src/python/grpcio_status/grpc_status/__init__.py +++ b/contrib/libs/grpc/src/python/grpcio_status/grpc_status/__init__.py @@ -1,13 +1,13 @@ -# Copyright 2018 The gRPC Authors -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. +# Copyright 2018 The gRPC Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/contrib/libs/grpc/src/python/grpcio_status/grpc_status/rpc_status.py b/contrib/libs/grpc/src/python/grpcio_status/grpc_status/rpc_status.py index d0ec08e3a5..3d4fcfd9b6 100644 --- a/contrib/libs/grpc/src/python/grpcio_status/grpc_status/rpc_status.py +++ b/contrib/libs/grpc/src/python/grpcio_status/grpc_status/rpc_status.py @@ -1,78 +1,78 @@ -# Copyright 2018 The gRPC Authors -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -"""Reference implementation for status mapping in gRPC Python.""" - -import collections +# Copyright 2018 The gRPC Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Reference implementation for status mapping in gRPC Python.""" + +import collections import sys - -import grpc - -from google.rpc import status_pb2 + +import grpc + +from google.rpc import status_pb2 from ._common import code_to_grpc_status_code, GRPC_DETAILS_METADATA_KEY - - -class _Status( + + +class _Status( collections.namedtuple('_Status', ('code', 'details', 'trailing_metadata')), grpc.Status): - pass - - -def from_call(call): - """Returns a google.rpc.status.Status message corresponding to a given grpc.Call. - - This is an EXPERIMENTAL API. - - Args: - call: A grpc.Call instance. - - Returns: - A google.rpc.status.Status message representing the status of the RPC. - - Raises: - ValueError: If the gRPC call's code or details are inconsistent with the - status code and message inside of the google.rpc.status.Status. - """ + pass + + +def from_call(call): + """Returns a google.rpc.status.Status message corresponding to a given grpc.Call. + + This is an EXPERIMENTAL API. + + Args: + call: A grpc.Call instance. + + Returns: + A google.rpc.status.Status message representing the status of the RPC. + + Raises: + ValueError: If the gRPC call's code or details are inconsistent with the + status code and message inside of the google.rpc.status.Status. + """ if call.trailing_metadata() is None: return None - for key, value in call.trailing_metadata(): + for key, value in call.trailing_metadata(): if key == GRPC_DETAILS_METADATA_KEY: - rich_status = status_pb2.Status.FromString(value) - if call.code().value[0] != rich_status.code: - raise ValueError( - 'Code in Status proto (%s) doesn\'t match status code (%s)' + rich_status = status_pb2.Status.FromString(value) + if call.code().value[0] != rich_status.code: + raise ValueError( + 'Code in Status proto (%s) doesn\'t match status code (%s)' % (code_to_grpc_status_code(rich_status.code), call.code())) - if call.details() != rich_status.message: - raise ValueError( - 'Message in Status proto (%s) doesn\'t match status details (%s)' - % (rich_status.message, call.details())) - return rich_status - return None - - -def to_status(status): - """Convert a google.rpc.status.Status message to grpc.Status. - - This is an EXPERIMENTAL API. - - Args: - status: a google.rpc.status.Status message representing the non-OK status - to terminate the RPC with and communicate it to the client. - - Returns: - A grpc.Status instance representing the input google.rpc.status.Status message. - """ + if call.details() != rich_status.message: + raise ValueError( + 'Message in Status proto (%s) doesn\'t match status details (%s)' + % (rich_status.message, call.details())) + return rich_status + return None + + +def to_status(status): + """Convert a google.rpc.status.Status message to grpc.Status. + + This is an EXPERIMENTAL API. + + Args: + status: a google.rpc.status.Status message representing the non-OK status + to terminate the RPC with and communicate it to the client. + + Returns: + A grpc.Status instance representing the input google.rpc.status.Status message. + """ return _Status(code=code_to_grpc_status_code(status.code), details=status.message, trailing_metadata=((GRPC_DETAILS_METADATA_KEY, |