proxygen
proxygen::HTTPTransaction::Transport Class Referenceabstract

#include <HTTPTransaction.h>

Inheritance diagram for proxygen::HTTPTransaction::Transport:
proxygen::HTTPSession proxygen::MockHTTPTransactionTransport proxygen::HTTPDownstreamSession proxygen::HTTPUpstreamSession testing::NiceMock< proxygen::MockHTTPTransactionTransport > testing::NiceMock< proxygen::MockHTTPTransactionTransport > testing::NiceMock< proxygen::MockHTTPTransactionTransport >

Public Member Functions

virtual ~Transport ()
 
virtual void pauseIngress (HTTPTransaction *txn) noexcept=0
 
virtual void resumeIngress (HTTPTransaction *txn) noexcept=0
 
virtual void transactionTimeout (HTTPTransaction *txn) noexcept=0
 
virtual void sendHeaders (HTTPTransaction *txn, const HTTPMessage &headers, HTTPHeaderSize *size, bool eom) noexcept=0
 
virtual size_t sendBody (HTTPTransaction *txn, std::unique_ptr< folly::IOBuf >, bool eom, bool trackLastByteFlushed) noexcept=0
 
virtual size_t sendChunkHeader (HTTPTransaction *txn, size_t length) noexcept=0
 
virtual size_t sendChunkTerminator (HTTPTransaction *txn) noexcept=0
 
virtual size_t sendEOM (HTTPTransaction *txn, const HTTPHeaders *trailers) noexcept=0
 
virtual size_t sendAbort (HTTPTransaction *txn, ErrorCode statusCode) noexcept=0
 
virtual size_t sendPriority (HTTPTransaction *txn, const http2::PriorityUpdate &pri) noexcept=0
 
virtual size_t sendWindowUpdate (HTTPTransaction *txn, uint32_t bytes) noexcept=0
 
virtual void notifyPendingEgress () noexcept=0
 
virtual void detach (HTTPTransaction *txn) noexcept=0
 
virtual void notifyIngressBodyProcessed (uint32_t bytes) noexcept=0
 
virtual void notifyEgressBodyBuffered (int64_t bytes) noexcept=0
 
virtual const folly::SocketAddressgetLocalAddress () const noexcept=0
 
virtual const folly::SocketAddressgetPeerAddress () const noexcept=0
 
virtual void describe (std::ostream &) const =0
 
virtual const wangle::TransportInfogetSetupTransportInfo () const noexcept=0
 
virtual bool getCurrentTransportInfo (wangle::TransportInfo *tinfo)=0
 
virtual const HTTPCodecgetCodec () const noexcept=0
 
virtual void drain ()=0
 
virtual bool isDraining () const =0
 
virtual HTTPTransactionnewPushedTransaction (HTTPCodec::StreamID assocStreamId, HTTPTransaction::PushHandler *handler) noexcept=0
 
virtual HTTPTransactionnewExTransaction (HTTPTransaction::Handler *handler, HTTPCodec::StreamID controlStream, bool unidirectional) noexcept=0
 
virtual std::string getSecurityProtocol () const =0
 
virtual void addWaitingForReplaySafety (folly::AsyncTransport::ReplaySafetyCallback *callback) noexcept=0
 
virtual void removeWaitingForReplaySafety (folly::AsyncTransport::ReplaySafetyCallback *callback) noexcept=0
 
virtual bool needToBlockForReplaySafety () const =0
 
virtual const folly::AsyncTransportWrappergetUnderlyingTransport () const noexcept=0
 
virtual bool isReplaySafe () const =0
 
virtual void setHTTP2PrioritiesEnabled (bool enabled)=0
 
virtual bool getHTTP2PrioritiesEnabled () const =0
 
virtual folly::Optional< const HTTPMessage::HTTPPrioritygetHTTPPriority (uint8_t level)=0
 

Detailed Description

Definition at line 331 of file HTTPTransaction.h.

Constructor & Destructor Documentation

virtual proxygen::HTTPTransaction::Transport::~Transport ( )
inlinevirtual

Member Function Documentation

virtual void proxygen::HTTPTransaction::Transport::addWaitingForReplaySafety ( folly::AsyncTransport::ReplaySafetyCallback callback)
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::describe ( std::ostream &  ) const
pure virtual
virtual void proxygen::HTTPTransaction::Transport::detach ( HTTPTransaction txn)
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::drain ( )
pure virtual
virtual bool proxygen::HTTPTransaction::Transport::getCurrentTransportInfo ( wangle::TransportInfo tinfo)
pure virtual
virtual bool proxygen::HTTPTransaction::Transport::getHTTP2PrioritiesEnabled ( ) const
pure virtual
virtual folly::Optional<const HTTPMessage::HTTPPriority> proxygen::HTTPTransaction::Transport::getHTTPPriority ( uint8_t  level)
pure virtual
virtual const folly::SocketAddress& proxygen::HTTPTransaction::Transport::getLocalAddress ( ) const
pure virtualnoexcept
virtual const folly::SocketAddress& proxygen::HTTPTransaction::Transport::getPeerAddress ( ) const
pure virtualnoexcept
virtual std::string proxygen::HTTPTransaction::Transport::getSecurityProtocol ( ) const
pure virtual
virtual const wangle::TransportInfo& proxygen::HTTPTransaction::Transport::getSetupTransportInfo ( ) const
pure virtualnoexcept
virtual const folly::AsyncTransportWrapper* proxygen::HTTPTransaction::Transport::getUnderlyingTransport ( ) const
pure virtualnoexcept
virtual bool proxygen::HTTPTransaction::Transport::isDraining ( ) const
pure virtual
virtual bool proxygen::HTTPTransaction::Transport::isReplaySafe ( ) const
pure virtual

Returns true if the underlying transport has completed full handshake.

Implemented in proxygen::HTTPUpstreamSession, and proxygen::HTTPDownstreamSession.

Referenced by proxygen::MockHTTPTransactionTransport::getUnderlyingTransport().

virtual bool proxygen::HTTPTransaction::Transport::needToBlockForReplaySafety ( ) const
pure virtual
virtual HTTPTransaction* proxygen::HTTPTransaction::Transport::newExTransaction ( HTTPTransaction::Handler handler,
HTTPCodec::StreamID  controlStream,
bool  unidirectional 
)
pure virtualnoexcept
virtual HTTPTransaction* proxygen::HTTPTransaction::Transport::newPushedTransaction ( HTTPCodec::StreamID  assocStreamId,
HTTPTransaction::PushHandler handler 
)
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::notifyEgressBodyBuffered ( int64_t  bytes)
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::notifyIngressBodyProcessed ( uint32_t  bytes)
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::notifyPendingEgress ( )
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::pauseIngress ( HTTPTransaction txn)
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::removeWaitingForReplaySafety ( folly::AsyncTransport::ReplaySafetyCallback callback)
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::resumeIngress ( HTTPTransaction txn)
pure virtualnoexcept
virtual size_t proxygen::HTTPTransaction::Transport::sendAbort ( HTTPTransaction txn,
ErrorCode  statusCode 
)
pure virtualnoexcept
virtual size_t proxygen::HTTPTransaction::Transport::sendBody ( HTTPTransaction txn,
std::unique_ptr< folly::IOBuf ,
bool  eom,
bool  trackLastByteFlushed 
)
pure virtualnoexcept
virtual size_t proxygen::HTTPTransaction::Transport::sendChunkHeader ( HTTPTransaction txn,
size_t  length 
)
pure virtualnoexcept
virtual size_t proxygen::HTTPTransaction::Transport::sendChunkTerminator ( HTTPTransaction txn)
pure virtualnoexcept
virtual size_t proxygen::HTTPTransaction::Transport::sendEOM ( HTTPTransaction txn,
const HTTPHeaders trailers 
)
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::sendHeaders ( HTTPTransaction txn,
const HTTPMessage headers,
HTTPHeaderSize size,
bool  eom 
)
pure virtualnoexcept
virtual size_t proxygen::HTTPTransaction::Transport::sendPriority ( HTTPTransaction txn,
const http2::PriorityUpdate pri 
)
pure virtualnoexcept
virtual size_t proxygen::HTTPTransaction::Transport::sendWindowUpdate ( HTTPTransaction txn,
uint32_t  bytes 
)
pure virtualnoexcept
virtual void proxygen::HTTPTransaction::Transport::setHTTP2PrioritiesEnabled ( bool  enabled)
pure virtual
virtual void proxygen::HTTPTransaction::Transport::transactionTimeout ( HTTPTransaction txn)
pure virtualnoexcept

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