#include <XrdClHttpOps.hh>
Classes | |
| class | CurlProgressCallback |
Public Types | |
| using | Headers = std::vector<std::pair<std::string, std::string>> |
| Public Types inherited from XrdClHttp::CurlOperation | |
| using | HeaderList = std::vector<std::pair<std::string, std::string>> |
| enum class | HttpVerb { COPY , DELETE , HEAD , GET , MKCOL , OPTIONS , PROPFIND , PUT , Count } |
| enum | OpError { ErrNone , ErrHeaderTimeout , ErrCallback , ErrOperationTimeout , ErrTransferClientStall , ErrTransferStall , ErrTransferSlow } |
| enum class | RedirectAction { Fail , Reinvoke , ReinvokeAfterAllow } |
Public Member Functions | |
| CurlCopyOp (XrdCl::ResponseHandler *handler, const std::string &source_url, const Headers &source_hdrs, const std::string &dest_url, const Headers &dest_hdrs, struct timespec timeout, XrdCl::Log *logger, CreateConnCalloutType callout) | |
| virtual | ~CurlCopyOp () |
| virtual HttpVerb | GetVerb () const override |
| void | ReleaseHandle () override |
| void | SetCallback (std::unique_ptr< CurlProgressCallback > callback) |
| bool | Setup (CURL *curl, CurlWorker &) override |
| void | Success () override |
| Public Member Functions inherited from XrdClHttp::CurlOperation | |
| CurlOperation (const CurlOperation &)=delete | |
| CurlOperation (XrdCl::ResponseHandler *handler, const std::string &url, std::chrono::steady_clock::time_point expiry, XrdCl::Log *log, CreateConnCalloutType, HeaderCallout *header_callout) | |
| CurlOperation (XrdCl::ResponseHandler *handler, const std::string &url, struct timespec timeout, XrdCl::Log *log, CreateConnCalloutType, HeaderCallout *header_callout) | |
| virtual | ~CurlOperation () |
| virtual bool | ContinueHandle () |
| virtual void | Fail (uint16_t errCode, uint32_t errNum, const std::string &) |
| bool | FinishSetup (CURL *curl) |
| std::pair< XErrorCode, std::string > | GetCallbackError () const |
| CreateConnCalloutType | GetConnCalloutFunc () const |
| std::string | GetCurlErrorMessage () const |
| CURL * | GetCurlHandle () const |
| OpError | GetError () const |
| std::chrono::steady_clock::time_point | GetHeaderExpiry () const |
| std::chrono::steady_clock::time_point | GetOperationExpiry () |
| std::unique_ptr< ResponseInfo > | GetResponseInfo () |
| int | GetStatusCode () const |
| std::string | GetStatusMessage () const |
| bool | GetTriedBoker () const |
| const std::string & | GetUrl () const |
| bool | HasFailed () const |
| bool | HeaderTimeoutExpired (const std::chrono::steady_clock::time_point &now) |
| bool | IsDone () const |
| bool | IsPaused () const |
| bool | IsRedirect () const |
| std::unique_ptr< ResponseInfo > | MoveResponseInfo () |
| bool | OperationTimeoutExpired (const std::chrono::steady_clock::time_point &now) |
| virtual void | OptionsDone () |
| virtual RedirectAction | Redirect (std::string &target) |
| virtual bool | RequiresOptions () const |
| virtual void | SetContinueQueue (std::shared_ptr< XrdClHttp::HandlerQueue > queue) |
| void | SetTriedBoker () |
| bool | StartConnectionCallout (std::string &err) |
| std::tuple< uint64_t, std::chrono::steady_clock::duration, std::chrono::steady_clock::duration, std::chrono::steady_clock::duration > | StatisticsReset () |
| bool | TransferStalled (uint64_t xfer_bytes, const std::chrono::steady_clock::time_point &now) |
| bool | UseConnectionCallout () |
| virtual int | WaitSocket () |
| virtual int | WaitSocketCallback (std::string &err) |
Additional Inherited Members | |
| Static Public Member Functions inherited from XrdClHttp::CurlOperation | |
| static void | CleanupDnsCache () |
| static int | GetDefaultSlowRateBytesSec () |
| static int | GetDefaultStallTimeout () |
| static const std::string | GetVerbString (HttpVerb) |
| static void | SetSlowRateBytesSec (int rate) |
| static void | SetStallTimeout (const std::chrono::steady_clock::duration &stall_interval) |
| static void | SetStallTimeout (int stall_interval) |
| Protected Member Functions inherited from XrdClHttp::CurlOperation | |
| int | FailCallback (XErrorCode ecode, const std::string &emsg) |
| void | SetDone (bool has_failed) |
| void | SetPaused (bool paused) |
| void | UpdateBytes (uint64_t bytes) |
| Protected Attributes inherited from XrdClHttp::CurlOperation | |
| std::unique_ptr< CURL, void(*)(CURL *)> | m_curl |
| XrdCl::ResponseHandler * | m_handler {nullptr} |
| HeaderCallout * | m_header_callout |
| std::chrono::steady_clock::time_point | m_header_expiry |
| HeaderParser | m_headers |
| std::vector< std::pair< std::string, std::string > > | m_headers_list |
| XrdCl::Log * | m_logger |
| int | m_minimum_rate {m_minimum_transfer_rate} |
| std::chrono::steady_clock::time_point | m_operation_expiry |
| const std::string | m_url |
| Static Protected Attributes inherited from XrdClHttp::CurlOperation | |
| static constexpr int | m_default_minimum_rate {1024 * 256} |
| static int | m_minimum_transfer_rate {CurlOperation::m_default_minimum_rate} |
Definition at line 812 of file XrdClHttpOps.hh.
| using XrdClHttp::CurlCopyOp::Headers = std::vector<std::pair<std::string, std::string>> |
Definition at line 814 of file XrdClHttpOps.hh.
| CurlCopyOp::CurlCopyOp | ( | XrdCl::ResponseHandler * | handler, |
| const std::string & | source_url, | ||
| const Headers & | source_hdrs, | ||
| const std::string & | dest_url, | ||
| const Headers & | dest_hdrs, | ||
| struct timespec | timeout, | ||
| XrdCl::Log * | logger, | ||
| CreateConnCalloutType | callout ) |
Definition at line 25 of file XrdClHttpOpCopy.cc.
References XrdClHttp::CurlOperation::CurlOperation(), XrdClHttp::CurlOperation::m_headers_list, and XrdClHttp::CurlOperation::m_minimum_rate.
|
inlinevirtual |
Definition at line 819 of file XrdClHttpOps.hh.
|
inlineoverridevirtual |
Implements XrdClHttp::CurlOperation.
Definition at line 833 of file XrdClHttpOps.hh.
References XrdClHttp::CurlOperation::COPY.
|
overridevirtual |
Reimplemented from XrdClHttp::CurlOperation.
Definition at line 68 of file XrdClHttpOpCopy.cc.
References XrdClHttp::CurlOperation::m_curl, and XrdClHttp::CurlOperation::ReleaseHandle().
| void XrdClHttp::CurlCopyOp::SetCallback | ( | std::unique_ptr< CurlProgressCallback > | callback | ) |
|
overridevirtual |
Reimplemented from XrdClHttp::CurlOperation.
Definition at line 42 of file XrdClHttpOpCopy.cc.
References XrdClHttp::CurlOperation::m_curl, XrdClHttp::CurlOperation::m_headers_list, and XrdClHttp::CurlOperation::Setup().
|
overridevirtual |
Implements XrdClHttp::CurlOperation.
Definition at line 56 of file XrdClHttpOpCopy.cc.
References XrdClHttp::CurlOperation::m_handler, and XrdClHttp::CurlOperation::SetDone().