xrootd
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | List of all members
XrdCl::HttpFilePlugIn Class Reference

#include <HttpFilePlugIn.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 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. More...
 
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 PgWrite (uint64_t offset, uint32_t nbpgs, const void *buffer, std::vector< uint32_t > &cksums, ResponseHandler *handler, uint16_t timeout)
 
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

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

Member Function Documentation

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

Reimplemented from XrdCl::FilePlugIn.

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

Reimplemented from XrdCl::FilePlugIn.

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

Reimplemented from XrdCl::FilePlugIn.

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.

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.

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.

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

Reimplemented from XrdCl::FilePlugIn.

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

Reimplemented from XrdCl::FilePlugIn.

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

Reimplemented from XrdCl::FilePlugIn.

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.

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

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

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