xrootd
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
XrdCl::HttpFilePlugIn Class Reference

#include <XrdClHttpFilePlugIn.hh>

Inheritance diagram for XrdCl::HttpFilePlugIn:
Inheritance graph
[legend]
Collaboration diagram for XrdCl::HttpFilePlugIn:
Collaboration graph
[legend]

Public Member Functions

 HttpFilePlugIn ()
 
virtual ~HttpFilePlugIn () noexcept
 
virtual XRootDStatus Open (const std::string &url, OpenFlags::Flags flags, Access::Mode mode, ResponseHandler *handler, uint16_t timeout) override
 
virtual XRootDStatus Close (ResponseHandler *handler, uint16_t timeout) override
 
virtual XRootDStatus Stat (bool force, ResponseHandler *handler, uint16_t timeout) override
 
virtual XRootDStatus Read (uint64_t offset, uint32_t size, void *buffer, ResponseHandler *handler, uint16_t timeout) override
 
virtual XRootDStatus PgRead (uint64_t offset, uint32_t size, void *buffer, ResponseHandler *handler, uint16_t timeout) override
 
virtual XRootDStatus Write (uint64_t offset, uint32_t size, const void *buffer, ResponseHandler *handler, uint16_t timeout) override
 
virtual XRootDStatus PgWrite (uint64_t offset, uint32_t size, const void *buffer, std::vector< uint32_t > &cksums, ResponseHandler *handler, uint16_t timeout) override
 
virtual XRootDStatus Sync (ResponseHandler *handler, uint16_t timeout) override
 
virtual XRootDStatus VectorRead (const ChunkList &chunks, void *buffer, XrdCl::ResponseHandler *handler, uint16_t timeout) override
 
virtual bool IsOpen () const override
 
virtual bool SetProperty (const std::string &name, const std::string &value) override
 
virtual bool GetProperty (const std::string &name, std::string &value) const override
 
- Public Member Functions inherited from XrdCl::FilePlugIn
virtual ~FilePlugIn ()
 Destructor.
 
virtual XRootDStatus Read (uint64_t offset, uint32_t size, Optional< uint64_t > fdoff, int fd, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus Write (uint64_t offset, Buffer &&buffer, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus Write (uint64_t offset, uint32_t size, Optional< uint64_t > fdoff, int fd, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus Truncate (uint64_t size, ResponseHandler *handler, uint16_t timeout)
 
virtual XRootDStatus VectorWrite (const ChunkList &chunks, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus WriteV (uint64_t offset, const struct iovec *iov, int iovcnt, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus Fcntl (const Buffer &arg, ResponseHandler *handler, uint16_t timeout)
 
virtual XRootDStatus Visa (ResponseHandler *handler, uint16_t timeout)
 

Private Attributes

Davix::Context * davix_context_
 
Davix::DavPosix * davix_client_
 
DAVIX_FD * davix_fd_
 
std::mutex offset_locker
 
uint64_t curr_offset
 
bool avoid_pread_
 
bool isChannelEncrypted
 
bool is_open_
 
uint64_t filesize
 
std::string url_
 
std::unordered_map< std::string, std::string > properties_
 
Loglogger_
 

Constructor & Destructor Documentation

◆ HttpFilePlugIn()

XrdCl::HttpFilePlugIn::HttpFilePlugIn ( )

◆ ~HttpFilePlugIn()

virtual XrdCl::HttpFilePlugIn::~HttpFilePlugIn ( )
virtualnoexcept

Member Function Documentation

◆ Close()

virtual XRootDStatus XrdCl::HttpFilePlugIn::Close ( ResponseHandler handler,
uint16_t  timeout 
)
overridevirtual
See also
XrdCl::File::Close

Reimplemented from XrdCl::FilePlugIn.

◆ GetProperty()

virtual bool XrdCl::HttpFilePlugIn::GetProperty ( const std::string &  name,
std::string &  value 
) const
overridevirtual
See also
XrdCl::File::GetProperty

Reimplemented from XrdCl::FilePlugIn.

◆ IsOpen()

virtual bool XrdCl::HttpFilePlugIn::IsOpen ( ) const
overridevirtual
See also
XrdCl::File::IsOpen

Reimplemented from XrdCl::FilePlugIn.

◆ Open()

virtual XRootDStatus XrdCl::HttpFilePlugIn::Open ( const std::string &  url,
OpenFlags::Flags  flags,
Access::Mode  mode,
ResponseHandler handler,
uint16_t  timeout 
)
overridevirtual
See also
XrdCl::File::Open

Reimplemented from XrdCl::FilePlugIn.

◆ PgRead()

virtual XRootDStatus XrdCl::HttpFilePlugIn::PgRead ( uint64_t  offset,
uint32_t  size,
void *  buffer,
ResponseHandler handler,
uint16_t  timeout 
)
overridevirtual
See also
XrdCl::File::PgRead - async

Reimplemented from XrdCl::FilePlugIn.

◆ PgWrite()

virtual XRootDStatus XrdCl::HttpFilePlugIn::PgWrite ( uint64_t  offset,
uint32_t  size,
const void *  buffer,
std::vector< uint32_t > &  cksums,
ResponseHandler handler,
uint16_t  timeout 
)
overridevirtual
See also
XrdCl::File::PgWrite - async

Reimplemented from XrdCl::FilePlugIn.

◆ Read()

virtual XRootDStatus XrdCl::HttpFilePlugIn::Read ( uint64_t  offset,
uint32_t  size,
void *  buffer,
ResponseHandler handler,
uint16_t  timeout 
)
overridevirtual
See also
XrdCl::File::Read

Reimplemented from XrdCl::FilePlugIn.

◆ SetProperty()

virtual bool XrdCl::HttpFilePlugIn::SetProperty ( const std::string &  name,
const std::string &  value 
)
overridevirtual
See also
XrdCl::File::SetProperty

Reimplemented from XrdCl::FilePlugIn.

◆ Stat()

virtual XRootDStatus XrdCl::HttpFilePlugIn::Stat ( bool  force,
ResponseHandler handler,
uint16_t  timeout 
)
overridevirtual
See also
XrdCl::File::Stat

Reimplemented from XrdCl::FilePlugIn.

◆ Sync()

virtual XRootDStatus XrdCl::HttpFilePlugIn::Sync ( ResponseHandler handler,
uint16_t  timeout 
)
overridevirtual
See also
XrdCl::File::Sync

Reimplemented from XrdCl::FilePlugIn.

◆ VectorRead()

virtual XRootDStatus XrdCl::HttpFilePlugIn::VectorRead ( const ChunkList chunks,
void *  buffer,
XrdCl::ResponseHandler handler,
uint16_t  timeout 
)
overridevirtual
See also
XrdCl::File::VectorRead

Reimplemented from XrdCl::FilePlugIn.

◆ Write()

virtual XRootDStatus XrdCl::HttpFilePlugIn::Write ( uint64_t  offset,
uint32_t  size,
const void *  buffer,
ResponseHandler handler,
uint16_t  timeout 
)
overridevirtual
See also
XrdCl::File::Write

Reimplemented from XrdCl::FilePlugIn.

Member Data Documentation

◆ avoid_pread_

bool XrdCl::HttpFilePlugIn::avoid_pread_
private

◆ curr_offset

uint64_t XrdCl::HttpFilePlugIn::curr_offset
private

◆ davix_client_

Davix::DavPosix* XrdCl::HttpFilePlugIn::davix_client_
private

◆ davix_context_

Davix::Context* XrdCl::HttpFilePlugIn::davix_context_
private

◆ davix_fd_

DAVIX_FD* XrdCl::HttpFilePlugIn::davix_fd_
private

◆ filesize

uint64_t XrdCl::HttpFilePlugIn::filesize
private

◆ is_open_

bool XrdCl::HttpFilePlugIn::is_open_
private

◆ isChannelEncrypted

bool XrdCl::HttpFilePlugIn::isChannelEncrypted
private

◆ logger_

Log* XrdCl::HttpFilePlugIn::logger_
private

◆ offset_locker

std::mutex XrdCl::HttpFilePlugIn::offset_locker
private

◆ properties_

std::unordered_map<std::string, std::string> XrdCl::HttpFilePlugIn::properties_
private

◆ url_

std::string XrdCl::HttpFilePlugIn::url_
private

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