XRootD
Loading...
Searching...
No Matches
XrdCl::UnpackXAttrStatus Class Reference

Helper class for unpacking single XAttrStatus from bulk response. More...

#include <XrdClOperationHandlers.hh>

Inheritance diagram for XrdCl::UnpackXAttrStatus:
Collaboration diagram for XrdCl::UnpackXAttrStatus:

Public Member Functions

 UnpackXAttrStatus (ResponseHandler *handler)
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

Helper class for unpacking single XAttrStatus from bulk response.

Definition at line 41 of file XrdClOperationHandlers.hh.

Constructor & Destructor Documentation

◆ UnpackXAttrStatus()

XrdCl::UnpackXAttrStatus::UnpackXAttrStatus ( ResponseHandler * handler)
inline

Definition at line 45 of file XrdClOperationHandlers.hh.

45 : handler( handler )
46 {
47 }

Member Function Documentation

◆ HandleResponse()

void XrdCl::UnpackXAttrStatus::HandleResponse ( XRootDStatus * status,
AnyObject * response )
inlinevirtual

Callback method.

Reimplemented from XrdCl::ResponseHandler.

Definition at line 52 of file XrdClOperationHandlers.hh.

53 {
54 // status maybe error for old servers not supporting xattrs
55 if( !status->IsOK() )
56 {
57 handler->HandleResponse( status, nullptr );
58 return;
59 }
60
61 std::vector<XAttrStatus> *bulk = nullptr;
62 response->Get( bulk );
63 if (status && bulk && !bulk->empty()) {
64 *status = bulk->front().status;
65 }
66 handler->HandleResponse( status, nullptr );
67 delete response;
68 }

References XrdCl::AnyObject::Get(), and XrdCl::Status::IsOK().

Here is the call graph for this function:

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