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

#include <userver/middlewares/pipeline.hpp>

Detailed Description

class for building a middleware dependency.

If you don't care about the order in relative to others, ignore this and your middleware will be in the kUser group. Otherwise, pass a instance of this class to MiddlewareComponentBase in the constructor of your middleware component.

Examples
samples/grpc_middleware_service/src/middlewares/client/middleware.hpp, and samples/grpc_middleware_service/src/middlewares/server/middleware.hpp.

Definition at line 110 of file pipeline.hpp.

Public Member Functions

 MiddlewareDependencyBuilder ()=default
 Builder for middleware dependencey.
 
 MiddlewareDependencyBuilder (const MiddlewareDependencyBuilder &)=default
 
 MiddlewareDependencyBuilder (MiddlewareDependencyBuilder &&) noexcept=default
 
template<typename MiddlewareBefore >
MiddlewareDependencyBuilder Before (DependencyType type=DependencyType::kStrong) &&
 Add dependency for your middleware. Your middleware will be before 'MiddlewareBefore' in the pipeline.
 
MiddlewareDependencyBuilder Before (std::string_view before, DependencyType type=DependencyType::kStrong) &&
 Add dependency for your middleware. Your middleware will be before 'before' in the pipeline.
 
template<typename MiddlewareAfter >
MiddlewareDependencyBuilder After (DependencyType type=DependencyType::kStrong) &&
 Add dependency for your middleware. Your middleware will be after 'MiddlewareAfter' in the pipeline.
 
MiddlewareDependencyBuilder After (std::string_view after, DependencyType type=DependencyType::kStrong) &&
 Add dependency for your middleware. Your middleware will be after 'after' in the pipeline.
 
template<typename Group >
MiddlewareDependencyBuilder InGroup () &&
 Add dependency for your middleware. Your middleware will be in the 'Group' group.
 

Constructor & Destructor Documentation

◆ MiddlewareDependencyBuilder()

middlewares::MiddlewareDependencyBuilder::MiddlewareDependencyBuilder ( )
explicitdefault

Builder for middleware dependencey.

Parameters
priorityis middleware priority

Member Function Documentation

◆ After() [1/2]

template<typename MiddlewareAfter >
MiddlewareDependencyBuilder middlewares::MiddlewareDependencyBuilder::After ( DependencyType type = DependencyType::kStrong) &&

Add dependency for your middleware. Your middleware will be after 'MiddlewareAfter' in the pipeline.

Parameters
typeis connect type between middlewares

Definition at line 173 of file pipeline.hpp.

◆ After() [2/2]

MiddlewareDependencyBuilder middlewares::MiddlewareDependencyBuilder::After ( std::string_view after,
DependencyType type = DependencyType::kStrong ) &&

Add dependency for your middleware. Your middleware will be after 'after' in the pipeline.

Parameters
typeis connect type between middlewares
afteris the middleware component name

◆ Before() [1/2]

template<typename MiddlewareBefore >
MiddlewareDependencyBuilder middlewares::MiddlewareDependencyBuilder::Before ( DependencyType type = DependencyType::kStrong) &&

Add dependency for your middleware. Your middleware will be before 'MiddlewareBefore' in the pipeline.

Parameters
typeis connect type between middlewares

Definition at line 165 of file pipeline.hpp.

◆ Before() [2/2]

MiddlewareDependencyBuilder middlewares::MiddlewareDependencyBuilder::Before ( std::string_view before,
DependencyType type = DependencyType::kStrong ) &&

Add dependency for your middleware. Your middleware will be before 'before' in the pipeline.

Parameters
typeis connect type between middlewares
beforeis the middleware component name

◆ InGroup()

template<typename Group >
MiddlewareDependencyBuilder middlewares::MiddlewareDependencyBuilder::InGroup ( ) &&

Add dependency for your middleware. Your middleware will be in the 'Group' group.

Parameters
typeis type of Group
Examples
samples/grpc_middleware_service/src/middlewares/client/middleware.hpp, and samples/grpc_middleware_service/src/middlewares/server/middleware.hpp.

Definition at line 181 of file pipeline.hpp.


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