Barracuda Application Server C/C++ Reference
Native APIs, integration guides, and platform interfaces
HttpAsynchReqResp Struct Reference

Detailed Description

Simultaneously receive and send a stream of data.

The HttpAsynchReqResp class makes it possible to asynchronously receive and send data at the same time. The HttpAsynchReqResp can also be used as a replacement for using a HttpAsynchReq and HttpAsynchResp object. An HttpAsynchReqResp instance is easier to use than first using a HttpAsynchReq object for receiving data and then later using a HttpAsynchResp for sending a response message.

#include <HttpAsynchReq.h>

Inheritance diagram for HttpAsynchReqResp:

Public Member Functions

 HttpAsynchReqResp ()
 Uninitialized storage; initialize before use or destruction. More...
 
 HttpAsynchReqResp (HttpServer *server, HttpAsynchReq_OnData onData)
 Create a HttpAsynchReqResp instance. More...
 
int start (HttpRequest *req, void *recBuf, S32 recBufSize, void *sendBuf, S32 sendBufSize)
 Start the HttpAsynchReqResp object. More...
 
int startResp (HttpRequest *req, void *sendBuf, S32 sendBufSize)
 Start response if you know that all data was received by the web-server. More...
 
ThreadMutex * getMutex ()
 
HttpServer * getServer ()
 
HttpAsynchResp * getResponse ()
 
- Public Member Functions inherited from HttpAsynchReq
 HttpAsynchReq ()
 Uninitialized storage; initialize before use or destruction. More...
 
 HttpAsynchReq (HttpServer *server, HttpAsynchReq_OnData data)
 Create an instance of HttpAsynchReq. More...
 
 ~HttpAsynchReq ()
 Stop dispatcher reception and destroy the owned connection. More...
 
SBaFileSize getPacketSizeLeft ()
 Inspect receive progress after successful start. More...
 
void * getBuffer ()
 Returns a pointer to the internal buffer where the received data is stored. More...
 
SBaFileSize getBufferSize ()
 
bool isChunkEncoding ()
 
int start (HttpRequest *req, void *buffer, S32 bufferSize)
 Take over the request connection and start asynchronous reception. More...
 
void stop ()
 Remove active dispatcher reception, mark an active connection terminated, and clear receive-buffer state. More...
 
HttpConnection * getCon (HttpAsynchReq *o)
 Stop dispatcher reception and obtain the connection for handoff. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from HttpAsynchReq
static SBaFileSize calcPacketSize (HttpRequest *req)
 Inspect the request's body framing without consuming it. More...
 

Constructor & Destructor Documentation

◆ HttpAsynchReqResp()

HttpAsynchReqResp::HttpAsynchReqResp ( )

Uninitialized storage; initialize before use or destruction.