proxygen
|
#include <HTTPSessionController.h>
Public Member Functions | |
virtual | ~HTTPSessionController () |
virtual HTTPTransactionHandler * | getRequestHandler (HTTPTransaction &txn, HTTPMessage *msg)=0 |
virtual HTTPTransactionHandler * | getParseErrorHandler (HTTPTransaction *txn, const HTTPException &error, const folly::SocketAddress &localAddress)=0 |
virtual HTTPTransactionHandler * | getTransactionTimeoutHandler (HTTPTransaction *txn, const folly::SocketAddress &localAddress)=0 |
virtual void | attachSession (HTTPSessionBase *session)=0 |
virtual void | detachSession (const HTTPSessionBase *session)=0 |
virtual void | onSessionCodecChange (HTTPSessionBase *) |
virtual std::chrono::milliseconds | getGracefulShutdownTimeout () const |
virtual std::chrono::milliseconds | getSessionFlowControlTimeout () const |
virtual const HeaderIndexingStrategy * | getHeaderIndexingStrategy () const |
Definition at line 28 of file HTTPSessionController.h.
|
inlinevirtual |
Definition at line 30 of file HTTPSessionController.h.
References folly::pushmi::operators::error().
|
pure virtual |
Inform the controller it is associated with this particular session.
Implemented in proxygen::SimpleController.
|
pure virtual |
Informed at the end when the given HTTPSession is going away.
Implemented in proxygen::SimpleController.
Referenced by proxygen::HTTPSessionBase::runDestroyCallbacks().
|
inlinevirtual |
Optionally allow the session to query custom graceful shutdown timeout.
Reimplemented in proxygen::SimpleController.
Definition at line 82 of file HTTPSessionController.h.
Referenced by proxygen::HTTPSession::readTimeoutExpired().
|
inlinevirtual |
Returns the H2 header indexing strategy to be employed by the session
Definition at line 96 of file HTTPSessionController.h.
Referenced by proxygen::HTTPSessionBase::initCodecHeaderIndexingStrategy().
|
pure virtual |
Will be invoked when HTTPSession is unable to parse a new request on the connection because of bad input.
error contains specific information about what went wrong
Implemented in proxygen::HTTPUpstreamSessionController, and proxygen::SimpleController.
Referenced by proxygen::HTTPSessionBase::getParseErrorHandler().
|
pure virtual |
Will be invoked whenever HTTPSession successfully parses a request
The controller creates a Handler for a new transaction. The transaction and HTTP message (request) are passed so the implementation can construct different handlers based on these. The transaction will be explicitly set on the handler later via setTransaction. The request message will be passed in onHeadersComplete.
Implemented in proxygen::HTTPUpstreamSessionController, and proxygen::SimpleController.
Referenced by proxygen::HTTPDownstreamSession::setupOnHeadersComplete().
|
inlinevirtual |
Optionally allow the session to query custom flow control timeout.
Definition at line 89 of file HTTPSessionController.h.
|
pure virtual |
Will be invoked when HTTPSession times out parsing a new request.
Implemented in proxygen::HTTPUpstreamSessionController, and proxygen::SimpleController.
Referenced by proxygen::HTTPDownstreamSession::getTransactionTimeoutHandler().
|
inlinevirtual |
Inform the controller that the session's codec changed
Definition at line 77 of file HTTPSessionController.h.
Referenced by proxygen::HTTPSessionBase::onCodecChanged().