proxygen
|
#include <Pipeline.h>
Public Member Functions | |
virtual | ~PipelineBase ()=default |
void | setPipelineManager (PipelineManager *manager) |
PipelineManager * | getPipelineManager () |
void | deletePipeline () |
void | setTransport (std::shared_ptr< folly::AsyncTransport > transport) |
std::shared_ptr< folly::AsyncTransport > | getTransport () |
void | setWriteFlags (folly::WriteFlags flags) |
folly::WriteFlags | getWriteFlags () |
void | setReadBufferSettings (uint64_t minAvailable, uint64_t allocationSize) |
std::pair< uint64_t, uint64_t > | getReadBufferSettings () |
void | setTransportInfo (std::shared_ptr< TransportInfo > tInfo) |
std::shared_ptr< TransportInfo > | getTransportInfo () |
template<class H > | |
PipelineBase & | addBack (std::shared_ptr< H > handler) |
template<class H > | |
PipelineBase & | addBack (H &&handler) |
template<class H > | |
PipelineBase & | addBack (H *handler) |
template<class H > | |
PipelineBase & | addFront (std::shared_ptr< H > handler) |
template<class H > | |
PipelineBase & | addFront (H &&handler) |
template<class H > | |
PipelineBase & | addFront (H *handler) |
template<class H > | |
PipelineBase & | remove (H *handler) |
template<class H > | |
PipelineBase & | remove () |
PipelineBase & | removeFront () |
PipelineBase & | removeBack () |
template<class H > | |
H * | getHandler (int i) |
template<class H > | |
H * | getHandler () |
template<class H > | |
ContextType< H >::type * | getContext (int i) |
template<class H > | |
ContextType< H >::type * | getContext () |
template<class H > | |
bool | setOwner (H *handler) |
virtual void | finalize ()=0 |
size_t | numHandlers () const |
Protected Member Functions | |
template<class Context > | |
void | addContextFront (Context *ctx) |
void | detachHandlers () |
Protected Attributes | |
std::vector< std::shared_ptr< PipelineContext > > | ctxs_ |
std::vector< PipelineContext * > | inCtxs_ |
std::vector< PipelineContext * > | outCtxs_ |
Private Types | |
typedef std::vector< std::shared_ptr< PipelineContext > >::iterator | ContextIterator |
Private Member Functions | |
template<class Context > | |
PipelineBase & | addHelper (std::shared_ptr< Context > &&ctx, bool front) |
template<class H > | |
PipelineBase & | removeHelper (H *handler, bool checkEqual) |
ContextIterator | removeAt (const ContextIterator &it) |
Private Attributes | |
PipelineManager * | manager_ {nullptr} |
std::shared_ptr< folly::AsyncTransport > | transport_ |
std::shared_ptr< TransportInfo > | transportInfo_ |
folly::WriteFlags | writeFlags_ {folly::WriteFlags::NONE} |
std::pair< uint64_t, uint64_t > | readBufferSettings_ {2048, 2048} |
std::shared_ptr< PipelineContext > | owner_ |
Definition at line 43 of file Pipeline.h.
|
private |
Definition at line 151 of file Pipeline.h.
|
virtualdefault |
PipelineBase & wangle::PipelineBase::addBack | ( | std::shared_ptr< H > | handler | ) |
Definition at line 39 of file Pipeline-inl.h.
References addHelper(), and folly::gen::move.
Referenced by addBack(), and wangle::ClientDispatcherBase< wangle::Pipeline, folly::Req, Resp >::setPipeline().
PipelineBase & wangle::PipelineBase::addBack | ( | H && | handler | ) |
Definition at line 47 of file Pipeline-inl.h.
References addBack(), and handler().
PipelineBase & wangle::PipelineBase::addBack | ( | H * | handler | ) |
Definition at line 52 of file Pipeline-inl.h.
References addBack().
|
protected |
Definition at line 150 of file Pipeline-inl.h.
References addHelper().
Referenced by wangle::StaticPipeline< R, W, Handler, Handlers... >::StaticPipeline().
PipelineBase & wangle::PipelineBase::addFront | ( | std::shared_ptr< H > | handler | ) |
Definition at line 57 of file Pipeline-inl.h.
References addHelper(), and folly::gen::move.
Referenced by addFront().
PipelineBase & wangle::PipelineBase::addFront | ( | H && | handler | ) |
Definition at line 65 of file Pipeline-inl.h.
References addFront(), and handler().
PipelineBase & wangle::PipelineBase::addFront | ( | H * | handler | ) |
Definition at line 70 of file Pipeline-inl.h.
References addFront().
|
private |
Definition at line 155 of file Pipeline-inl.h.
References wangle::BOTH, ctxs_, wangle::IN, inCtxs_, wangle::OUT, and outCtxs_.
Referenced by addBack(), addContextFront(), and addFront().
|
inline |
Definition at line 55 of file Pipeline.h.
|
protected |
Definition at line 85 of file Pipeline.cpp.
Referenced by wangle::Pipeline< R, W >::~Pipeline(), and wangle::StaticPipeline< R, W, Handler, Handlers... >::~StaticPipeline().
|
pure virtual |
Implemented in wangle::Pipeline< R, W >, and wangle::Pipeline< int >.
Referenced by wangle::ClientDispatcherBase< wangle::Pipeline, folly::Req, Resp >::~ClientDispatcherBase().
ContextType< H >::type * wangle::PipelineBase::getContext | ( | int | i | ) |
Definition at line 119 of file Pipeline-inl.h.
ContextType< H >::type * wangle::PipelineBase::getContext | ( | ) |
Definition at line 126 of file Pipeline-inl.h.
References ctxs_.
H * wangle::PipelineBase::getHandler | ( | int | i | ) |
H * wangle::PipelineBase::getHandler | ( | ) |
Definition at line 113 of file Pipeline-inl.h.
Referenced by getHandler().
|
inline |
Definition at line 51 of file Pipeline.h.
Referenced by wangle::AsyncSocketHandler::refreshTimeout().
Definition at line 37 of file Pipeline.cpp.
References readBufferSettings_.
|
inline |
Definition at line 65 of file Pipeline.h.
References handler(), i, transport_, and uint64_t.
Referenced by wangle::HandlerContext< thrift::test::Bonk, std::unique_ptr< folly::IOBuf > >::getTransport(), wangle::InboundHandlerContext< M >::getTransport(), wangle::OutboundHandlerContext< Wout >::getTransport(), and TEST_F().
std::shared_ptr< TransportInfo > wangle::PipelineBase::getTransportInfo | ( | ) |
Definition at line 45 of file Pipeline.cpp.
References transportInfo_.
WriteFlags wangle::PipelineBase::getWriteFlags | ( | ) |
size_t wangle::PipelineBase::numHandlers | ( | ) | const |
Definition at line 93 of file Pipeline.cpp.
References ctxs_.
PipelineBase & wangle::PipelineBase::remove | ( | H * | handler | ) |
Definition at line 103 of file Pipeline-inl.h.
References handler().
Referenced by wangle::ClientDispatcherBase< wangle::Pipeline, folly::Req, Resp >::~ClientDispatcherBase().
PipelineBase & wangle::PipelineBase::remove | ( | ) |
Definition at line 98 of file Pipeline-inl.h.
|
private |
Definition at line 49 of file Pipeline.cpp.
References wangle::BOTH, ctxs_, wangle::IN, inCtxs_, wangle::OUT, and outCtxs_.
Referenced by removeBack(), removeFront(), and removeHelper().
PipelineBase & wangle::PipelineBase::removeBack | ( | ) |
Definition at line 77 of file Pipeline.cpp.
References ctxs_, and removeAt().
PipelineBase & wangle::PipelineBase::removeFront | ( | ) |
Definition at line 69 of file Pipeline.cpp.
References ctxs_, and removeAt().
|
private |
Definition at line 75 of file Pipeline-inl.h.
References ctxs_, handler(), and removeAt().
bool wangle::PipelineBase::setOwner | ( | H * | handler | ) |
Definition at line 137 of file Pipeline-inl.h.
References ctxs_, handler(), and owner_.
|
inline |
Definition at line 47 of file Pipeline.h.
Referenced by wangle::BroadcastPool< T, R, P >::BroadcastManager::getHandler().
Definition at line 31 of file Pipeline.cpp.
References readBufferSettings_.
|
inline |
Definition at line 61 of file Pipeline.h.
References transport_.
void wangle::PipelineBase::setTransportInfo | ( | std::shared_ptr< TransportInfo > | tInfo | ) |
Definition at line 41 of file Pipeline.cpp.
References transportInfo_.
void wangle::PipelineBase::setWriteFlags | ( | folly::WriteFlags | flags | ) |
|
protected |
Definition at line 135 of file Pipeline.h.
Referenced by addHelper(), detachHandlers(), wangle::Pipeline< R, W >::finalize(), getContext(), numHandlers(), removeAt(), removeBack(), removeFront(), removeHelper(), and setOwner().
|
protected |
Definition at line 136 of file Pipeline.h.
Referenced by addHelper(), wangle::Pipeline< R, W >::finalize(), and removeAt().
|
private |
Definition at line 140 of file Pipeline.h.
|
protected |
Definition at line 137 of file Pipeline.h.
Referenced by addHelper(), wangle::Pipeline< R, W >::finalize(), and removeAt().
|
private |
Definition at line 158 of file Pipeline.h.
Referenced by detachHandlers(), and setOwner().
Definition at line 156 of file Pipeline.h.
Referenced by getReadBufferSettings(), and setReadBufferSettings().
|
private |
Definition at line 141 of file Pipeline.h.
|
private |
Definition at line 142 of file Pipeline.h.
Referenced by getTransportInfo(), and setTransportInfo().
|
private |
Definition at line 155 of file Pipeline.h.
Referenced by getWriteFlags(), and setWriteFlags().