XRootD
XrdBwmHandleCB Class Reference
+ Inheritance diagram for XrdBwmHandleCB:
+ Collaboration diagram for XrdBwmHandleCB:

Public Member Functions

 XrdBwmHandleCB ()
 
 ~XrdBwmHandleCB ()
 
void Done (int &Results, XrdOucErrInfo *eInfo, const char *Path=0)
 
int Same (unsigned long long arg1, unsigned long long arg2)
 
- Public Member Functions inherited from XrdOucEICB
 XrdOucEICB ()
 Constructor and destructor. More...
 
virtual ~XrdOucEICB ()
 
- Public Member Functions inherited from XrdOucErrInfo
 XrdOucErrInfo (const char *user, int MonID, int uc=0)
 
 XrdOucErrInfo (const char *user, XrdOucEnv *envp, int uc=0)
 
 XrdOucErrInfo (const char *user=0, XrdOucEICB *cb=0, unsigned long long ca=0, int mid=0, int uc=0)
 
virtual ~XrdOucErrInfo ()
 Destructor. More...
 
void clear ()
 Reset data and error information to null. Any appenadges are released. More...
 
bool extData ()
 
XrdOucEnvgetEnv ()
 
unsigned long long getErrArg ()
 
XrdOucEICBgetErrCB ()
 
XrdOucEICBgetErrCB (unsigned long long &ap)
 
const char * getErrData ()
 
int getErrInfo ()
 
int getErrMid ()
 
const char * getErrText ()
 
const char * getErrText (int &ecode)
 
int getErrTextLen ()
 
const char * getErrUser ()
 
char * getMsgBuff (int &mblen)
 
int getUCap ()
 
XrdOucErrInfooperator= (const XrdOucErrInfo &rhs)
 Assignment operator. More...
 
void Reset ()
 Reset object to no message state. Call this method to release appendages. More...
 
XrdOucEnvsetEnv (XrdOucEnv *newEnv)
 
void setErrArg (unsigned long long cbarg=0)
 
void setErrCB (XrdOucEICB *cb, unsigned long long cbarg=0)
 
int setErrCode (int code)
 
void setErrData (const char *Data, int Offs=0)
 
int setErrInfo (int code, const char *emsg)
 
int setErrInfo (int code, const char *txtlist[], int n)
 
int setErrInfo (int code, XrdOucBuffer *buffP)
 
void setErrMid (int mid)
 Set the monitoring identifier. More...
 
void setErrUser (const char *user)
 
void setUCap (int ucval)
 Set user capabilties. More...
 

Static Public Member Functions

static XrdBwmHandleCBAlloc ()
 

Additional Inherited Members

- Protected Attributes inherited from XrdOucErrInfo
union {
unsigned long long ErrCBarg
 
XrdOucEnvErrEnv
 
}; 
 
XrdOucBufferdataBuff
 
short dOff
 
XrdOucEICBErrCB
 
XrdOucEI ErrInfo
 
int mID
 
short reserved
 

Detailed Description

Definition at line 58 of file XrdBwmHandle.cc.

Constructor & Destructor Documentation

◆ XrdBwmHandleCB()

XrdBwmHandleCB::XrdBwmHandleCB ( )
inline

Definition at line 81 of file XrdBwmHandle.cc.

81 : Next(0) {}

Referenced by Alloc().

+ Here is the caller graph for this function:

◆ ~XrdBwmHandleCB()

XrdBwmHandleCB::~XrdBwmHandleCB ( )
inline

Definition at line 82 of file XrdBwmHandle.cc.

82 {}

Member Function Documentation

◆ Alloc()

static XrdBwmHandleCB* XrdBwmHandleCB::Alloc ( )
inlinestatic

Definition at line 63 of file XrdBwmHandle.cc.

64  {XrdBwmHandleCB *mP;
65  xMutex.Lock();
66  if (!(mP = Free)) mP = new XrdBwmHandleCB;
67  else Free = mP->Next;
68  xMutex.UnLock();
69  return mP;
70  }

References XrdBwmHandleCB(), XrdSysMutex::Lock(), and XrdSysMutex::UnLock().

Referenced by XrdBwmHandle::Dispatch().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Done()

void XrdBwmHandleCB::Done ( int &  Result,
XrdOucErrInfo eInfo,
const char *  Path = 0 
)
inlinevirtual

Invoke a callback after an operation completes.

Parameters
Result- the original function's result (may be changed).
eInfo- Associated error information. The eInfo object may not be modified until it's own callback Done() method is called, if supplied. If the callback function in eInfo is zero, then the eInfo object is deleted by the invoked callback. Otherwise, that method must be invoked by this callback function after the actual callback message is sent. This allows the callback requestor to do post-processing and be asynchronous being assured that the callback completed.
Path- Optionally, the path related to thid request. It is used for tracing and detailed monitoring purposes.

Implements XrdOucEICB.

Definition at line 72 of file XrdBwmHandle.cc.

73  {xMutex.Lock();
74  Next = Free;
75  Free = this;
76  xMutex.UnLock();
77  }

References XrdSysMutex::Lock(), and XrdSysMutex::UnLock().

+ Here is the call graph for this function:

◆ Same()

int XrdBwmHandleCB::Same ( unsigned long long  arg1,
unsigned long long  arg2 
)
inlinevirtual

Determine if two callback arguments refer to the same client.

Parameters
arg1- The first callback argument.
arg2- The second callback argument.
Returns
!0 - The arguments refer to the same client.
=0 - The arguments refer to the different clients.

Implements XrdOucEICB.

Definition at line 79 of file XrdBwmHandle.cc.

79 {return 0;}

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