5 #ifndef __HTTP_FILE_PLUG_IN_
6 #define __HTTP_FILE_PLUG_IN_
17 #include <unordered_map>
25 #define HTTP_FILE_PLUG_IN_AVOIDRANGE_ENV "XRDCLHTTP_AVOIDRANGE"
27 #define HTTP_FILE_PLUG_IN_AVOIDRANGE_CGI "xrdclhttp_avoidrange"
45 uint16_t timeout ) override;
51 uint16_t timeout ) override;
58 uint16_t timeout ) override;
67 uint16_t timeout ) override;
76 uint16_t timeout ) override;
85 uint16_t timeout ) override;
91 uint16_t timeout ) override;
99 uint16_t timeout ) override;
110 const
std::
string &value ) override;
116 std::
string &value ) const override;
Close operation (.
Definition: XrdClFileOperations.hh:364
An interface for file plug-ins.
Definition: XrdClPlugInInterface.hh:39
Definition: HttpFilePlugIn.hh:33
Davix::DavPosix davix_client_
Definition: HttpFilePlugIn.hh:121
std::unordered_map< std::string, std::string > properties_
Definition: HttpFilePlugIn.hh:135
virtual ~HttpFilePlugIn() noexcept=default
virtual XRootDStatus Read(uint64_t offset, uint32_t size, void *buffer, ResponseHandler *handler, uint16_t timeout) override
virtual bool IsOpen() const override
Davix::Context davix_context_
Definition: HttpFilePlugIn.hh:120
bool is_open_
Definition: HttpFilePlugIn.hh:131
virtual XRootDStatus Stat(bool force, ResponseHandler *handler, uint16_t timeout) override
virtual bool SetProperty(const std::string &name, const std::string &value) override
Log * logger_
Definition: HttpFilePlugIn.hh:137
bool avoid_pread_
Definition: HttpFilePlugIn.hh:128
virtual bool GetProperty(const std::string &name, std::string &value) const override
DAVIX_FD * davix_fd_
Definition: HttpFilePlugIn.hh:123
std::mutex offset_locker
Definition: HttpFilePlugIn.hh:125
bool isChannelEncrypted
Definition: HttpFilePlugIn.hh:129
std::string url_
Definition: HttpFilePlugIn.hh:133
uint64_t curr_offset
Definition: HttpFilePlugIn.hh:126
virtual XRootDStatus Write(uint64_t offset, uint32_t size, const 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
Handle diagnostics.
Definition: XrdClLog.hh:101
Open operation (.
Definition: XrdClFileOperations.hh:97
Handle an async response.
Definition: XrdClXRootDResponses.hh:1117
Sync operation (.
Definition: XrdClFileOperations.hh:514
VectorRead operation (.
Definition: XrdClFileOperations.hh:607
Request status.
Definition: XrdClXRootDResponses.hh:219
Definition: XrdClAnyObject.hh:26
std::vector< ChunkInfo > ChunkList
List of chunks.
Definition: XrdClXRootDResponses.hh:1046
Definition: XrdOucJson.hh:4517
Access mode.
Definition: XrdClFileSystem.hh:117
Open flags, may be or'd when appropriate.
Definition: XrdClFileSystem.hh:71