#include <userver/ugrpc/server/middlewares/base.hpp>
Base class for server gRPC middleware.
Public Member Functions | |
MiddlewareBase (const MiddlewareBase &)=delete | |
MiddlewareBase & | operator= (const MiddlewareBase &)=delete |
MiddlewareBase & | operator= (MiddlewareBase &&)=delete |
virtual void | OnCallStart (MiddlewareCallContext &context) const |
This hook is invoked once per Call (RPC), after the message metadata is received, but before the handler function is called. | |
virtual void | PostRecvMessage (MiddlewareCallContext &context, google::protobuf::Message &request) const |
The function is invoked after each received message. | |
virtual void | PreSendMessage (MiddlewareCallContext &context, google::protobuf::Message &response) const |
The function is invoked before each sended message. | |
virtual void | OnCallFinish (MiddlewareCallContext &context, const grpc::Status &status) const |
This hook is invoked once per Call (RPC), after the handler function returns, but before the message is sent to the upstream client. | |
|
virtual |
This hook is invoked once per Call (RPC), after the handler function returns, but before the message is sent to the upstream client.
All OnCallStart invoked in the reverse order relatively OnCallFinish. You can change grpc status and it will apply for a rpc call.
Reimplemented in ugrpc::server::middlewares::deadline_propagation::Middleware.
|
virtual |
This hook is invoked once per Call (RPC), after the message metadata is received, but before the handler function is called.
If all OnCallStart succeeded => OnCallFinish will invoked after a success method call.
Reimplemented in ugrpc::server::middlewares::baggage::Middleware, and ugrpc::server::middlewares::deadline_propagation::Middleware.
|
virtual |
The function is invoked after each received message.
PostRecvMessage is called:
Reimplemented in grpc_protovalidate::server::Middleware.
|
virtual |
The function is invoked before each sended message.
PreSendMessage is called: