django_socio_grpc.services.servicer_proxy
Module Contents
Classes
Allows to define middlewares that can be used in sync and async mode. Most of the code is taken from django.core.handlers.base.BaseHandler https://github.com/django/django/blob/main/django/core/handlers/base.py |
|
gRPC call
↓
|
Functions
Data
API
- django_socio_grpc.services.servicer_proxy.middleware_logger
‘getLogger(…)’
- django_socio_grpc.services.servicer_proxy.request_logger
‘getLogger(…)’
- django_socio_grpc.services.servicer_proxy.exception_logger
‘getLogger(…)’
- django_socio_grpc.services.servicer_proxy._ServicerCtx
‘Local(…)’
- django_socio_grpc.services.servicer_proxy.get_servicer_context()
- class django_socio_grpc.services.servicer_proxy.MiddlewareCapable
Allows to define middlewares that can be used in sync and async mode. Most of the code is taken from django.core.handlers.base.BaseHandler https://github.com/django/django/blob/main/django/core/handlers/base.py
- _middleware_chain
None
- adapt_method_mode
None
- load_middleware(is_async=False)
Populate middleware lists from settings.GRPC_MIDDLEWARE.
- abstract _get_response(request_container: django_socio_grpc.request_transformer.GRPCRequestContainer)
- abstract async _get_response_async(request_container: django_socio_grpc.request_transformer.GRPCRequestContainer)
- class django_socio_grpc.services.servicer_proxy.ServicerProxy(service_class: type[django_socio_grpc.services.Service], **initkwargs)
Bases:
django_socio_grpc.services.servicer_proxy.MiddlewareCapablegRPC call ↓
ServicerProxy.__getattr__(action)↓ServicerProxy.get_handler(action)↓ServicerProxy.[correct handler](sync or async and stream or not) ↓return _middleware_chain(from setting GRPC_MIDDLEWARE) ↓… middleware 1 ↓… middleware 2 ↓… middleware n ↓ServicerProxy._get_response(sync or async) … … …Initialization
- _get_response(request_container: django_socio_grpc.request_transformer.GRPCRequestContainer) django_socio_grpc.request_transformer.GRPCResponseContainer
- async _get_response_async(request_container: django_socio_grpc.request_transformer.GRPCRequestContainer) django_socio_grpc.request_transformer.GRPCResponseContainer
- _get_async_stream_handler(action: str) collections.abc.Awaitable[collections.abc.Callable]
- _get_async_handler(action: str) collections.abc.Awaitable[collections.abc.Callable]
- _get_handler(action: str) collections.abc.Callable
- _get_stream_handler(action: str) collections.abc.Callable
- create_service(**kwargs)
- __getattr__(action)
- process_exception(exc: Exception, context: grpc.ServicerContext)
- async async_process_exception(exc: Exception, context: grpc.aio.ServicerContext)