![]() |
XRootD
|
Base class for any message's body reader. More...
#include <XrdClAsyncRawReaderIntfc.hh>
Classes | |
struct | ChunkStatus |
Public Member Functions | |
AsyncRawReaderIntfc (const URL &url, const Message &request) | |
virtual | ~AsyncRawReaderIntfc () |
Destructor. | |
virtual XRootDStatus | GetResponse (AnyObject *&response)=0 |
Get the response. | |
virtual XRootDStatus | Read (Socket &socket, uint32_t &btsret)=0 |
void | SetChunkList (ChunkList *chunks) |
Sets the chunk list with user buffers. | |
void | SetDataLength (int dlen) |
Sets response data length. | |
Protected Types | |
using | buffer_t = std::vector<char> |
enum | Stage { ReadStart , ReadRdLst , ReadRaw , ReadDiscard , ReadDone } |
Stages of reading out a response from the socket. More... | |
Protected Member Functions | |
XRootDStatus | ReadBytesAsync (Socket &socket, char *buffer, uint32_t toBeRead, uint32_t &bytesRead) |
Protected Attributes | |
size_t | chidx |
size_t | chlen |
size_t | choff |
std::vector< ChunkStatus > | chstatus |
ChunkList * | chunks |
bool | dataerr |
buffer_t | discardbuff |
uint32_t | dlen |
uint32_t | msgbtsrd |
uint32_t | rawbtsrd |
Stage | readstage |
const Message & | request |
const URL & | url |
Base class for any message's body reader.
Definition at line 34 of file XrdClAsyncRawReaderIntfc.hh.
|
protected |
Definition at line 132 of file XrdClAsyncRawReaderIntfc.hh.
|
protected |
Stages of reading out a response from the socket.
Enumerator | |
---|---|
ReadStart | |
ReadRdLst | |
ReadRaw | |
ReadDiscard | |
ReadDone |
Definition at line 137 of file XrdClAsyncRawReaderIntfc.hh.
Definition at line 38 of file XrdClAsyncRawReaderIntfc.hh.
References chidx, chlen, choff, chunks, dataerr, dlen, msgbtsrd, rawbtsrd, readstage, ReadStart, request, and url.
Referenced by XrdCl::AsyncDiscardReader::AsyncDiscardReader(), XrdCl::AsyncRawReader::AsyncRawReader(), and XrdCl::AsyncVectorReader::AsyncVectorReader().
|
inlinevirtual |
|
pure virtual |
Get the response.
Implemented in XrdCl::AsyncDiscardReader, XrdCl::AsyncRawReader, and XrdCl::AsyncVectorReader.
|
pure virtual |
Readout raw data from socket
socket | : the socket |
btsret | : number of bytes read |
Implemented in XrdCl::AsyncDiscardReader, XrdCl::AsyncRawReader, and XrdCl::AsyncVectorReader.
|
inlineprotected |
Definition at line 98 of file XrdClAsyncRawReaderIntfc.hh.
References XrdCl::Status::code, XrdCl::Status::IsOK(), XrdCl::Socket::Read(), XrdCl::stOK, XrdCl::suDone, and XrdCl::suRetry.
Referenced by XrdCl::AsyncRawReader::Read(), and XrdCl::AsyncVectorReader::Read().
|
inline |
Sets the chunk list with user buffers.
Definition at line 72 of file XrdClAsyncRawReaderIntfc.hh.
|
inline |
|
protected |
Definition at line 163 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by AsyncRawReaderIntfc(), XrdCl::AsyncRawReader::Read(), and XrdCl::AsyncVectorReader::Read().
|
protected |
Definition at line 165 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by AsyncRawReaderIntfc(), XrdCl::AsyncRawReader::Read(), and XrdCl::AsyncVectorReader::Read().
|
protected |
Definition at line 164 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by AsyncRawReaderIntfc(), XrdCl::AsyncRawReader::Read(), and XrdCl::AsyncVectorReader::Read().
|
protected |
Definition at line 158 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by XrdCl::AsyncVectorReader::GetResponse(), XrdCl::AsyncVectorReader::Read(), and SetChunkList().
|
protected |
Definition at line 157 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by AsyncRawReaderIntfc(), XrdCl::AsyncVectorReader::GetResponse(), XrdCl::AsyncRawReader::Read(), XrdCl::AsyncVectorReader::Read(), and SetChunkList().
|
protected |
Definition at line 168 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by AsyncRawReaderIntfc(), and XrdCl::AsyncRawReader::GetResponse().
|
protected |
Definition at line 167 of file XrdClAsyncRawReaderIntfc.hh.
|
protected |
Definition at line 159 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by AsyncRawReaderIntfc(), XrdCl::AsyncRawReader::Read(), XrdCl::AsyncVectorReader::Read(), and SetDataLength().
|
protected |
Definition at line 160 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by AsyncRawReaderIntfc(), XrdCl::AsyncRawReader::Read(), and XrdCl::AsyncVectorReader::Read().
|
protected |
Definition at line 161 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by AsyncRawReaderIntfc(), XrdCl::AsyncVectorReader::GetResponse(), XrdCl::AsyncRawReader::Read(), and XrdCl::AsyncVectorReader::Read().
|
protected |
Definition at line 149 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by AsyncRawReaderIntfc(), XrdCl::AsyncRawReader::Read(), XrdCl::AsyncVectorReader::Read(), and SetDataLength().
|
protected |
Definition at line 155 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by XrdCl::AsyncDiscardReader::AsyncDiscardReader(), XrdCl::AsyncRawReader::AsyncRawReader(), AsyncRawReaderIntfc(), XrdCl::AsyncVectorReader::AsyncVectorReader(), XrdCl::AsyncRawReader::GetResponse(), XrdCl::AsyncDiscardReader::Read(), and XrdCl::AsyncRawReader::Read().
|
protected |
Definition at line 154 of file XrdClAsyncRawReaderIntfc.hh.
Referenced by XrdCl::AsyncDiscardReader::AsyncDiscardReader(), XrdCl::AsyncRawReader::AsyncRawReader(), AsyncRawReaderIntfc(), XrdCl::AsyncVectorReader::AsyncVectorReader(), XrdCl::AsyncDiscardReader::Read(), XrdCl::AsyncRawReader::Read(), and XrdCl::AsyncVectorReader::Read().