|
xrootd
|
#include <XrdClOperations.hh>


Public Member Functions | |
| PipelineHandler (ResponseHandler *handler) | |
| PipelineHandler () | |
| Default Constructor. More... | |
| void | HandleResponseWithHosts (XRootDStatus *status, AnyObject *response, HostList *hostList) |
| Callback function. More... | |
| void | HandleResponse (XRootDStatus *status, AnyObject *response) |
| Callback function. More... | |
| ~PipelineHandler () | |
| Destructor. More... | |
| void | AddOperation (Operation< true > *operation) |
| void | Assign (const Timeout &timeout, std::promise< XRootDStatus > prms, std::function< void(const XRootDStatus &)> final, Operation< true > *opr) |
| void | Assign (std::function< void(const XRootDStatus &)> final) |
| Assign the finalization routine. More... | |
| void | PreparePipelineStart () |
| Called by a pipeline on the handler of its first operation before Run. More... | |
Public Member Functions inherited from XrdCl::ResponseHandler | |
| virtual | ~ResponseHandler () |
Private Member Functions | |
| void | HandleResponseImpl (XRootDStatus *status, AnyObject *response, HostList *hostList=nullptr) |
| Callback function implementation;. More... | |
| void | dealloc (XRootDStatus *status, AnyObject *response, HostList *hostList) |
Private Attributes | |
| std::unique_ptr< ResponseHandler > | responseHandler |
| The handler of our operation. More... | |
| std::unique_ptr< Operation < true > > | currentOperation |
| The operation the handler is assigned to. More... | |
| std::unique_ptr< Operation < true > > | nextOperation |
| Next operation in the pipeline. More... | |
| Timeout | timeout |
| Pipeline timeout. More... | |
| std::promise< XRootDStatus > | prms |
| The promise that there will be a result (traveling along the pipeline) More... | |
| std::function< void(const XRootDStatus &)> | final |
Friends | |
| template<bool > | |
| class | Operation |
Additional Inherited Members | |
Static Public Member Functions inherited from XrdCl::ResponseHandler | |
| static ResponseHandler * | Wrap (std::function< void(XRootDStatus &, AnyObject &)> func) |
| static ResponseHandler * | Wrap (std::function< void(XRootDStatus *, AnyObject *)> func) |
Wrapper for ResponseHandler, used only internally to run next operation after previous one is finished
| XrdCl::PipelineHandler::PipelineHandler | ( | ResponseHandler * | handler | ) |
Constructor.
| handler | : the handler of our operation |
|
inline |
Default Constructor.
|
inline |
Destructor.
| void XrdCl::PipelineHandler::AddOperation | ( | Operation< true > * | operation | ) |
Add new operation to the pipeline
| operation | : operation to add |
| void XrdCl::PipelineHandler::Assign | ( | const Timeout & | timeout, |
| std::promise< XRootDStatus > | prms, | ||
| std::function< void(const XRootDStatus &)> | final, | ||
| Operation< true > * | opr | ||
| ) |
Set workflow to this and all next handlers. In the last handler it is used to finish workflow execution
| prms | : a promis that the pipeline will have a result |
| final | : a callable that should be called at the end of pipeline |
| void XrdCl::PipelineHandler::Assign | ( | std::function< void(const XRootDStatus &)> | final | ) |
Assign the finalization routine.
|
inlineprivate |
|
virtual |
Callback function.
Reimplemented from XrdCl::ResponseHandler.
Referenced by XrdCl::ParallelOperation< HasHndl >::Ctx::Handle(), XrdCl::OpenFileImpl< HasHndl >::RunImpl(), XrdCl::CloseFileImpl< HasHndl >::RunImpl(), XrdCl::ZipStatImpl< HasHndl >::RunImpl(), and XrdCl::ZipListImpl< HasHndl >::RunImpl().
|
private |
Callback function implementation;.
|
virtual |
Callback function.
Reimplemented from XrdCl::ResponseHandler.
| void XrdCl::PipelineHandler::PreparePipelineStart | ( | ) |
Called by a pipeline on the handler of its first operation before Run.
Referenced by XrdCl::Pipeline::Run().
|
friend |
|
private |
The operation the handler is assigned to.
|
private |
The lambda/function/functor that should be called at the end of the pipeline (traveling along the pipeline)
|
private |
Next operation in the pipeline.
|
private |
The promise that there will be a result (traveling along the pipeline)
|
private |
The handler of our operation.
1.8.5