userver: ugrpc::server::middlewares::deadline_propagation::Middleware Class Reference
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
ugrpc::server::middlewares::deadline_propagation::Middleware Class Referencefinal

Detailed Description

Definition at line 10 of file middleware.hpp.

+ Inheritance diagram for ugrpc::server::middlewares::deadline_propagation::Middleware:

Public Member Functions

void OnCallStart (MiddlewareCallContext &context) const override
 This hook is invoked once per Call (RPC), after the message metadata is received, but before the handler function is called.
 
void OnCallFinish (MiddlewareCallContext &context, const grpc::Status &status) const override
 This hook is invoked once per Call (RPC), after the handler function returns, but before the message is sent to the upstream client.
 
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.
 

Static Public Attributes

static constexpr std::string_view kName = "grpc-server-deadline-propagation"
 The default name of.
 
static const auto kDependency
 dependency of this middleware
 

Member Function Documentation

◆ OnCallFinish()

void ugrpc::server::middlewares::deadline_propagation::Middleware::OnCallFinish ( MiddlewareCallContext & context,
const grpc::Status & status ) const
overridevirtual

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.

Warning
If Handler (grpc method) returns !ok status, OnCallFinish won't be called.

Reimplemented from ugrpc::server::MiddlewareBase.

◆ OnCallStart()

void ugrpc::server::middlewares::deadline_propagation::Middleware::OnCallStart ( MiddlewareCallContext & context) const
overridevirtual

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 from ugrpc::server::MiddlewareBase.

◆ PostRecvMessage()

virtual void ugrpc::server::MiddlewareBase::PostRecvMessage ( MiddlewareCallContext & context,
google::protobuf::Message & request ) const
virtualinherited

The function is invoked after each received message.

PostRecvMessage is called:

  • unary: exactly once per Call (RPC)
  • stream: 0, 1 or more times

Reimplemented in grpc_protovalidate::server::Middleware.

◆ PreSendMessage()

virtual void ugrpc::server::MiddlewareBase::PreSendMessage ( MiddlewareCallContext & context,
google::protobuf::Message & response ) const
virtualinherited

The function is invoked before each sended message.

PreSendMessage is called:

  • unary: 0 or 1 per Call (RPC), depending on whether the RPC returns a response or a failed status
  • stream: once per response message, that is, 0, 1, more times per Call (RPC).

Member Data Documentation

◆ kDependency

const auto ugrpc::server::middlewares::deadline_propagation::Middleware::kDependency
inlinestatic
Initial value:
=
.After<congestion_control::Component>(::middlewares::DependencyType::kWeak)

dependency of this middleware

Definition at line 18 of file middleware.hpp.


The documentation for this class was generated from the following file: