xrootd
|
Object for reading out data from the VectorRead response. More...
#include <XrdClAsyncVectorReader.hh>
Public Member Functions | |
AsyncVectorReader (const URL &url, const Message &request) | |
XRootDStatus | Read (Socket &socket, uint32_t &btsret) |
XRootDStatus | GetResponse (AnyObject *&response) |
Get the response. | |
Public Member Functions inherited from XrdCl::AsyncRawReaderIntfc | |
AsyncRawReaderIntfc (const URL &url, const Message &request) | |
virtual | ~AsyncRawReaderIntfc () |
Destructor. | |
void | SetDataLength (int dlen) |
Sets response data length. | |
void | SetChunkList (ChunkList *chunks) |
Sets the chunk list with user buffers. | |
Private Attributes | |
size_t | rdlstoff |
readahead_list | rdlst |
size_t | rdlstlen |
Additional Inherited Members | |
Protected Types inherited from XrdCl::AsyncRawReaderIntfc | |
enum | Stage { ReadStart , ReadRdLst , ReadRaw , ReadDiscard , ReadDone } |
Stages of reading out a response from the socket. More... | |
using | buffer_t = std::vector< char > |
Protected Member Functions inherited from XrdCl::AsyncRawReaderIntfc | |
XRootDStatus | ReadBytesAsync (Socket &socket, char *buffer, uint32_t toBeRead, uint32_t &bytesRead) |
Protected Attributes inherited from XrdCl::AsyncRawReaderIntfc | |
Stage | readstage |
const URL & | url |
const Message & | request |
ChunkList * | chunks |
std::vector< ChunkStatus > | chstatus |
uint32_t | dlen |
uint32_t | msgbtsrd |
uint32_t | rawbtsrd |
size_t | chidx |
size_t | choff |
size_t | chlen |
buffer_t | discardbuff |
bool | dataerr |
Object for reading out data from the VectorRead response.
|
inlinevirtual |
Get the response.
Implements XrdCl::AsyncRawReaderIntfc.
References XrdCl::AsyncRawReaderIntfc::chstatus, XrdCl::AsyncRawReaderIntfc::chunks, XrdCl::errInvalidResponse, XrdCl::AsyncRawReaderIntfc::rawbtsrd, XrdCl::AnyObject::Set(), and XrdCl::stFatal.
|
inlinevirtual |
Readout raw data from socket
socket | : the socket |
btsret | : number of bytes read |
Implements XrdCl::AsyncRawReaderIntfc.
References XrdCl::AsyncRawReaderIntfc::chidx, XrdCl::AsyncRawReaderIntfc::chlen, XrdCl::AsyncRawReaderIntfc::choff, XrdCl::AsyncRawReaderIntfc::chstatus, XrdCl::AsyncRawReaderIntfc::chunks, XrdCl::Status::code, XrdCl::AsyncRawReaderIntfc::dlen, XrdCl::Log::Dump(), XrdCl::errCorruptedHeader, XrdCl::errInternal, XrdCl::Log::Error(), XrdCl::URL::GetHostId(), XrdCl::DefaultEnv::GetLog(), XrdCl::Status::IsOK(), XrdCl::AsyncRawReaderIntfc::msgbtsrd, readahead_list::offset, XrdCl::AsyncRawReaderIntfc::rawbtsrd, rdlst, rdlstlen, rdlstoff, XrdCl::AsyncRawReaderIntfc::ReadBytesAsync(), XrdCl::AsyncRawReaderIntfc::ReadDiscard, XrdCl::AsyncRawReaderIntfc::ReadDone, XrdCl::AsyncRawReaderIntfc::ReadRaw, XrdCl::AsyncRawReaderIntfc::ReadRdLst, XrdCl::AsyncRawReaderIntfc::readstage, XrdCl::AsyncRawReaderIntfc::ReadStart, readahead_list::rlen, XrdCl::stError, XrdCl::suRetry, XrdCl::AsyncRawReaderIntfc::url, and XrdCl::XRootDMsg.
|
private |
Referenced by AsyncVectorReader(), and Read().
|
private |
Referenced by Read().
|
private |
Referenced by Read().