#include <XrdClOperations.hh>
Public Member Functions | |
| ConcreteOperation (Args &&... args) | |
| template<bool from> | |
| ConcreteOperation (ConcreteOperation< Derived, from, HdlrFactory, Args... > &&op) | |
| Operation< HasHndl > * | Move () |
| template<typename Hdlr> | |
| Derived< true > | operator>> (Hdlr &&hdlr) |
| Derived< true > | operator| (FinalOperation &&fo) |
| Adds a final operation to the pipeline. | |
| Derived< true > | operator| (Operation< false > &&op) |
| Derived< true > | operator| (Operation< false > &op) |
| Derived< true > | operator| (Operation< true > &&op) |
| Derived< true > | operator| (Operation< true > &op) |
| Derived< HasHndl > | Timeout (uint16_t timeout) |
| Set operation timeout. | |
| Operation< true > * | ToHandled () |
| Public Member Functions inherited from XrdCl::Operation< HasHndl > | |
| Operation () | |
| Constructor. | |
| template<bool from> | |
| Operation (Operation< from > &&op) | |
| Move constructor between template instances. | |
| virtual | ~Operation () |
| Destructor. | |
| virtual std::string | ToString ()=0 |
| Name of the operation. | |
Protected Member Functions | |
| Derived< true > | StreamImpl (ResponseHandler *handler) |
| template<bool to> | |
| Derived< to > | Transform () |
| Protected Member Functions inherited from XrdCl::Operation< HasHndl > | |
| void | AddOperation (Operation< true > *op) |
| void | Run (Timeout timeout, std::promise< XRootDStatus > prms, std::function< void(const XRootDStatus &)> final) |
| virtual XRootDStatus | RunImpl (PipelineHandler *handler, uint16_t timeout)=0 |
Static Protected Member Functions | |
| static void | AllocHandler (ConcreteOperation< Derived, false, HdlrFactory, Args... > &me) |
| static void | AllocHandler (ConcreteOperation< Derived, true, HdlrFactory, Args... > &me) |
| static Derived< true > | PipeImpl (ConcreteOperation< Derived, HasHndl, HdlrFactory, Args... > &me, Operation< false > &op) |
| static Derived< true > | PipeImpl (ConcreteOperation< Derived, HasHndl, HdlrFactory, Args... > &me, Operation< true > &op) |
Protected Attributes | |
| std::tuple< Args... > | args |
| Operation arguments. | |
| uint16_t | timeout |
| Operation timeout. | |
| Protected Attributes inherited from XrdCl::Operation< HasHndl > | |
| std::unique_ptr< PipelineHandler > | handler |
| Operation handler. | |
| bool | valid |
| Flag indicating if it is a valid object. | |
Friends | |
| template<template< bool > class, bool, typename, typename ...> | |
| class | ConcreteOperation |
Concrete Operation template Defines | and >> operator as well as operation arguments.
Definition at line 516 of file XrdClOperations.hh.
|
inline |
Constructor
| args | : operation arguments |
Definition at line 528 of file XrdClOperations.hh.
|
inline |
Move constructor from other states
| op | : the object that is being converted |
Definition at line 542 of file XrdClOperations.hh.
References ConcreteOperation, XrdCl::Operation< HasHndl >::Operation, args, and timeout.
|
inlinestaticprotected |
Definition at line 694 of file XrdClOperations.hh.
References ConcreteOperation, XrdCl::Operation< HasHndl >::handler, and XrdCl::Operation< HasHndl >::PipelineHandler.
|
inlinestaticprotected |
Definition at line 685 of file XrdClOperations.hh.
References ConcreteOperation.
Referenced by operator|(), PipeImpl(), and PipeImpl().
|
inlinevirtual |
Move current object into newly allocated instance
Implements XrdCl::Operation< HasHndl >.
Definition at line 625 of file XrdClOperations.hh.
References XrdCl::Operation< HasHndl >::Operation.
|
inline |
Adds ResponseHandler/function/functor/lambda/future handler for the operation.
Note: due to reference collapsing this covers both l-value and r-value references.
| hdlr | : function/functor/lambda |
Definition at line 557 of file XrdClOperations.hh.
References StreamImpl().
|
inline |
Adds a final operation to the pipeline.
Definition at line 613 of file XrdClOperations.hh.
References AllocHandler(), XrdCl::Operation< HasHndl >::handler, and Transform().
|
inline |
Creates a pipeline of 2 or more operations
| op | : operation to add |
Definition at line 605 of file XrdClOperations.hh.
References XrdCl::Operation< HasHndl >::Operation, and PipeImpl().
|
inline |
Creates a pipeline of 2 or more operations
| op | operation to add |
Definition at line 593 of file XrdClOperations.hh.
References XrdCl::Operation< HasHndl >::Operation, and PipeImpl().
|
inline |
Creates a pipeline of 2 or more operations
| op | : operation to add |
Definition at line 581 of file XrdClOperations.hh.
References XrdCl::Operation< HasHndl >::Operation, and PipeImpl().
|
inline |
Creates a pipeline of 2 or more operations
| op | : operation to add |
Definition at line 569 of file XrdClOperations.hh.
References XrdCl::Operation< HasHndl >::Operation, and PipeImpl().
|
inlinestaticprotected |
Implements operator| functionality
| me | : reference to myself (*this) |
| op | : reference to the other operation |
Definition at line 725 of file XrdClOperations.hh.
References ConcreteOperation, XrdCl::Operation< HasHndl >::Operation, AllocHandler(), XrdCl::Operation< HasHndl >::ToHandled(), and Transform().
|
inlinestaticprotected |
Implements operator| functionality
| me | : reference to myself (*this) |
| op | : reference to the other operation |
Definition at line 708 of file XrdClOperations.hh.
References ConcreteOperation, XrdCl::Operation< HasHndl >::Operation, AllocHandler(), XrdCl::Operation< HasHndl >::Move(), and Transform().
Referenced by operator|(), operator|(), operator|(), and operator|().
|
inlineprotected |
Implements operator>> functionality
| handler | : handler to be added |
Definition at line 674 of file XrdClOperations.hh.
References XrdCl::Operation< HasHndl >::handler, XrdCl::Operation< HasHndl >::PipelineHandler, and Transform().
Referenced by operator>>().
|
inline |
Set operation timeout.
Definition at line 646 of file XrdClOperations.hh.
References timeout.
Referenced by XrdCl::AppendFile(), XrdCl::Checkpoint(), XrdCl::ChkptWrt(), XrdCl::ChkptWrtV(), XrdCl::Close(), XrdCl::CloseArchive(), XrdCl::Open(), XrdCl::OpenArchive(), XrdCl::OpenFile(), XrdEc::OpenOnly(), XrdCl::PgRead(), XrdCl::PgWrite(), XrdCl::PgWrite(), XrdCl::Read(), XrdCl::Read(), XrdCl::ReadFrom(), XrdCl::Stat(), XrdCl::Sync(), XrdCl::Truncate(), XrdCl::VectorRead(), XrdCl::VectorRead(), XrdCl::VectorWrite(), XrdCl::Write(), XrdCl::Write(), and XrdCl::WriteV().
|
inlinevirtual |
Transform operation to handled
Implements XrdCl::Operation< HasHndl >.
Definition at line 636 of file XrdClOperations.hh.
References XrdCl::Operation< HasHndl >::Operation, XrdCl::Operation< HasHndl >::handler, and XrdCl::Operation< HasHndl >::PipelineHandler.
|
inlineprotected |
Transform into a new instance with desired state
Definition at line 661 of file XrdClOperations.hh.
Referenced by operator|(), PipeImpl(), PipeImpl(), and StreamImpl().
|
friend |
Definition at line 519 of file XrdClOperations.hh.
References ConcreteOperation.
Referenced by ConcreteOperation, ConcreteOperation(), AllocHandler(), AllocHandler(), PipeImpl(), and PipeImpl().
|
protected |
Operation arguments.
Definition at line 736 of file XrdClOperations.hh.
Referenced by ConcreteOperation(), and ConcreteOperation().
|
protected |
Operation timeout.
Definition at line 741 of file XrdClOperations.hh.
Referenced by ConcreteOperation(), ConcreteOperation(), and Timeout().