XRootD
Loading...
Searching...
No Matches
XrdCl::TaskWrapper< void, Return > Class Template Reference

#include <XrdClOperationHandlers.hh>

+ Inheritance diagram for XrdCl::TaskWrapper< void, Return >:
+ Collaboration diagram for XrdCl::TaskWrapper< void, Return >:

Public Member Functions

 TaskWrapper (std::packaged_task< Return(XRootDStatus &)> &&task)
 Constructor.
 
 TaskWrapper (std::packaged_task< Return(XRootDStatus &, void &)> &&task)
 Constructor.
 
void HandleResponse (XRootDStatus *status, AnyObject *response)
 Callback method.
 
void HandleResponse (XRootDStatus *status, AnyObject *response)
 Callback method.
 
- Public Member Functions inherited from XrdCl::ResponseHandler
virtual ~ResponseHandler ()
 
virtual void HandleResponseWithHosts (XRootDStatus *status, AnyObject *response, HostList *hostList)
 

Additional Inherited Members

- Static Public Member Functions inherited from XrdCl::ResponseHandler
static ResponseHandlerWrap (std::function< void(XRootDStatus &, AnyObject &)> func)
 
static ResponseHandlerWrap (std::function< void(XRootDStatus *, AnyObject *)> func)
 

Detailed Description

template<typename Return>
class XrdCl::TaskWrapper< void, Return >

Packaged Task wrapper, specialization for requests that have no response except for status.

  • Response : type of response returned by the server
  • Return : type of the value returned by the task

Definition at line 297 of file XrdClOperationHandlers.hh.

Constructor & Destructor Documentation

◆ TaskWrapper() [1/2]

template<typename Return>
XrdCl::TaskWrapper< void, Return >::TaskWrapper ( std::packaged_task< Return(XRootDStatus &)> && task)
inline

Constructor.

Parameters
task: a std::packaged_task

Definition at line 306 of file XrdClOperationHandlers.hh.

306 :
307 task( std::move( task ) )
308 {
309 }

◆ TaskWrapper() [2/2]

XrdCl::TaskWrapper< void, Return >::TaskWrapper ( std::packaged_task< Return(XRootDStatus &, void &)> && task)
inline

Constructor.

Parameters
task: a std::packaged_task

Definition at line 261 of file XrdClOperationHandlers.hh.

261 :
262 task( std::move( task ) )
263 {
264 }

Member Function Documentation

◆ HandleResponse() [1/2]

void XrdCl::TaskWrapper< void, Return >::HandleResponse ( XRootDStatus * status,
AnyObject * response )
inlinevirtual

Callback method.

Reimplemented from XrdCl::ResponseHandler.

Definition at line 269 of file XrdClOperationHandlers.hh.

270 {
274 task( *status, *resp );
275 } else {
277 task( *status, dummy );
278 }
279 }

◆ HandleResponse() [2/2]

template<typename Return>
void XrdCl::TaskWrapper< void, Return >::HandleResponse ( XRootDStatus * status,
AnyObject * response )
inlinevirtual

Callback method.

Reimplemented from XrdCl::ResponseHandler.

Definition at line 314 of file XrdClOperationHandlers.hh.


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