TPC::State Class Reference

#include <XrdTpcState.hh>

Collaboration diagram for TPC::State:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 State ()
 State (off_t start_offset, Stream &stream, CURL *curl, bool push)
 ~State ()
void SetTransferParameters (off_t offset, size_t size)
void CopyHeaders (XrdHttpExtReq &req)
off_t BytesTransferred () const
off_t GetContentLength () const
int GetStatusCode () const
void ResetAfterRequest ()
CURLGetHandle () const
int AvailableBuffers () const
void DumpBuffers () const
bool BodyTransferInProgress () const
StateDuplicate ()
void Move (State &other)
bool Finalize ()

Private Member Functions

bool InstallHandlers (CURL *curl)
 State (const State &)
int Header (const std::string &header)
int Write (char *buffer, size_t size)
int Read (char *buffer, size_t size)

Static Private Member Functions

static size_t HeaderCB (char *buffer, size_t size, size_t nitems, void *userdata)
static size_t WriteCB (void *buffer, size_t size, size_t nitems, void *userdata)
static size_t ReadCB (void *buffer, size_t size, size_t nitems, void *userdata)

Private Attributes

bool m_push
bool m_recv_status_line
bool m_recv_all_headers
off_t m_offset
off_t m_start_offset
int m_status_code
off_t m_content_length
Streamm_stream
CURLm_curl
struct curl_slist * m_headers
std::vector< std::string > m_headers_copy
std::string m_resp_protocol

Constructor & Destructor Documentation

TPC::State::State (  )  [inline]
TPC::State::State ( off_t  start_offset,
Stream stream,
CURL curl,
bool  push 
) [inline]

References InstallHandlers().

TPC::State::~State (  ) 
TPC::State::State ( const State  )  [private]

Member Function Documentation

int TPC::State::AvailableBuffers (  )  const
bool TPC::State::BodyTransferInProgress (  )  const [inline]

References m_content_length, and m_offset.

off_t TPC::State::BytesTransferred (  )  const [inline]

References m_offset.

void TPC::State::CopyHeaders ( XrdHttpExtReq req  ) 
void TPC::State::DumpBuffers (  )  const
State* TPC::State::Duplicate (  ) 
bool TPC::State::Finalize (  ) 
off_t TPC::State::GetContentLength (  )  const [inline]

References m_content_length.

CURL* TPC::State::GetHandle (  )  const [inline]

References m_curl.

int TPC::State::GetStatusCode (  )  const [inline]

References m_status_code.

int TPC::State::Header ( const std::string &  header  )  [private]
static size_t TPC::State::HeaderCB ( char *  buffer,
size_t  size,
size_t  nitems,
void *  userdata 
) [static, private]
bool TPC::State::InstallHandlers ( CURL curl  )  [private]

Referenced by State().

void TPC::State::Move ( State other  ) 
int TPC::State::Read ( char *  buffer,
size_t  size 
) [private]
static size_t TPC::State::ReadCB ( void *  buffer,
size_t  size,
size_t  nitems,
void *  userdata 
) [static, private]
void TPC::State::ResetAfterRequest (  ) 
void TPC::State::SetTransferParameters ( off_t  offset,
size_t  size 
)
int TPC::State::Write ( char *  buffer,
size_t  size 
) [private]
static size_t TPC::State::WriteCB ( void *  buffer,
size_t  size,
size_t  nitems,
void *  userdata 
) [static, private]

Member Data Documentation

Referenced by GetHandle().

struct curl_slist* TPC::State::m_headers [read, private]
std::vector<std::string> TPC::State::m_headers_copy [private]
off_t TPC::State::m_offset [private]
bool TPC::State::m_push [private]
std::string TPC::State::m_resp_protocol [private]
off_t TPC::State::m_start_offset [private]

Referenced by GetStatusCode().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 21 May 2020 for xrootd by  doxygen 1.6.1