xrootd
Public Member Functions | Protected Attributes | List of all members
XrdOucErrInfo Class Reference

#include <XrdOucErrInfo.hh>

Collaboration diagram for XrdOucErrInfo:
Collaboration graph
[legend]

Public Member Functions

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

Protected Attributes

XrdOucEI ErrInfo
 
XrdOucEICBErrCB
 
union {
   unsigned long long   ErrCBarg
 
   XrdOucEnv *   ErrEnv
 
}; 
 
int mID
 
short dOff
 
short reserved
 
XrdOucBuffer * dataBuff
 

Detailed Description

The XrdOucErrInfo class is used to communicate data, error, and callback information between plug-ins.

Constructor & Destructor Documentation

◆ XrdOucErrInfo() [1/3]

XrdOucErrInfo::XrdOucErrInfo ( const char *  user = 0,
XrdOucEICB cb = 0,
unsigned long long  ca = 0,
int  mid = 0,
int  uc = 0 
)
inline

Constructor

Parameters
user- Pointer to he user string in stable storage.
cb- Pointer to the callback object (zero if none).
ca- The callback argument.
mid- The monitoring identifier.
uc- The user capabilities.

◆ XrdOucErrInfo() [2/3]

XrdOucErrInfo::XrdOucErrInfo ( const char *  user,
XrdOucEnv envp,
int  uc = 0 
)
inline

Constructor

Parameters
user- Pointer to he user string in stable storage.
envp- Pointer to the error environment.
uc- The user capabilities.

◆ XrdOucErrInfo() [3/3]

XrdOucErrInfo::XrdOucErrInfo ( const char *  user,
int  MonID,
int  uc = 0 
)
inline

Constructor

Parameters
user- Pointer to he user string in stable storage.
MonID- The monitoring identifier.
uc- The user capabilities.

◆ ~XrdOucErrInfo()

virtual XrdOucErrInfo::~XrdOucErrInfo ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ clear()

void XrdOucErrInfo::clear ( )
inline

Reset data and error information to null. Any appenadges are released.

◆ extData()

bool XrdOucErrInfo::extData ( )
inline

Check if this object will return extended data (can optimize Reset() calls).

Returns
true - there is extended data. false - there is no extended data.

◆ getEnv()

XrdOucEnv* XrdOucErrInfo::getEnv ( )
inline

Get a pointer to the error environment that was previously set.

Returns
=0 - A callback is in effect which is mutually exclusive of conaining an error environment (i.e. no environment).
!0 - Pointer to the error environment.

◆ getErrArg()

unsigned long long XrdOucErrInfo::getErrArg ( )
inline

Obtain the callback argument.

Returns
The argument value currently in effect.

◆ getErrCB() [1/2]

XrdOucEICB* XrdOucErrInfo::getErrCB ( )
inline

Get the callback object.

Returns
Pointer to the callback object.

Referenced by XrdOucCallBack::Allowed().

◆ getErrCB() [2/2]

XrdOucEICB* XrdOucErrInfo::getErrCB ( unsigned long long &  ap)
inline

Get the callback object and its argument.

Parameters
ap- Reference to where the callback argument is returned.
Returns
Pointer to the callback object, ap holds the argument.

◆ getErrData()

const char* XrdOucErrInfo::getErrData ( )
inline

Get the error tracing data.

Returns
=0 - No tracing data has been set.
!0 - Pointer to error tracing data.

◆ getErrInfo()

int XrdOucErrInfo::getErrInfo ( )
inline

Get the error code.

Returns
The error code that was previously set.

◆ getErrMid()

int XrdOucErrInfo::getErrMid ( )
inline

Get the monitoring identifier.

Returns
The monitoring identifier.

◆ getErrText() [1/2]

const char* XrdOucErrInfo::getErrText ( )
inline

Get a pointer to the error text.

Returns
The pointer to the internal error text.

◆ getErrText() [2/2]

const char* XrdOucErrInfo::getErrText ( int &  ecode)
inline

Get a pointer to the error text and the error code.

Parameters
ecode- Reference to where the error code is to be returned.
Returns
The pointer to the internal error text.

◆ getErrTextLen()

int XrdOucErrInfo::getErrTextLen ( )
inline

Get the error text length (optimized for external buffers).

Returns
The mesage length.

◆ getErrUser()

const char* XrdOucErrInfo::getErrUser ( )
inline

Get a pointer to user information.

Returns
The pointer to the user string.

◆ getMsgBuff()

char* XrdOucErrInfo::getMsgBuff ( int &  mblen)
inline

Get the pointer to the internal message buffer along with its size.

Parameters
mblen- Reference to where the size it to be returned.
Returns
Pointer to the internal message buffer.

◆ getUCap()

int XrdOucErrInfo::getUCap ( )
inline

Get user capabilties.

Returns
the user capabilities.

◆ operator=()

XrdOucErrInfo& XrdOucErrInfo::operator= ( const XrdOucErrInfo rhs)
inline

Assignment operator.

References dataBuff, ErrCB, ErrCBarg, ErrInfo, and mID.

◆ Reset()

void XrdOucErrInfo::Reset ( )
inline

Reset object to no message state. Call this method to release appendages.

◆ setEnv()

XrdOucEnv* XrdOucErrInfo::setEnv ( XrdOucEnv newEnv)
inline

Set the error environment and return the previous environment. This call destroys any callback information that may have existed.

Parameters
newEnv- Pointer to the new error environment.
Returns
=0 - No previous envuironment existed.
!0 - Pointer to the previous error environment.

◆ setErrArg()

void XrdOucErrInfo::setErrArg ( unsigned long long  cbarg = 0)
inline

Set callback argument.

Parameters
cbarg- An opaque 8-byte call-back argument.

◆ setErrCB()

void XrdOucErrInfo::setErrCB ( XrdOucEICB cb,
unsigned long long  cbarg = 0 
)
inline

Set callback information.

Parameters
cb- Pointer to the object describing the callback.
cbarg- An opaque 8-byte call-back argument.

◆ setErrCode()

int XrdOucErrInfo::setErrCode ( int  code)
inline

Set error code. Any existing error text remains intact.

Parameters
code- The error number describing the error.
Returns
code - The error number.

References XrdOucEI::code.

◆ setErrData()

void XrdOucErrInfo::setErrData ( const char *  Data,
int  Offs = 0 
)
inline

Set the error tracing data (this is always placed in the internal buffer)

Parameters
Data- Pointer to the error tracing data.
Offs- Ofset into the message buffer where the data is to be set.

References strlcpy().

◆ setErrInfo() [1/3]

int XrdOucErrInfo::setErrInfo ( int  code,
const char *  emsg 
)
inline

Set error code and error text.

Parameters
code- The error number describing the error.
emsg- The error message text.
Returns
code - The error number.

References XrdOucEI::code, and strlcpy().

◆ setErrInfo() [2/3]

int XrdOucErrInfo::setErrInfo ( int  code,
const char *  txtlist[],
int  n 
)
inline

Set error code and error text.

Parameters
code- The error number describing the error.
txtlist- A vector of error message text segments.
n- The number of valid elements in txtlist.
Returns
code - The error number.

References XrdOucEI::code, and strlcpy().

◆ setErrInfo() [3/3]

int XrdOucErrInfo::setErrInfo ( int  code,
XrdOucBuffer *  buffP 
)
inline

Set error code and error text.

Parameters
code- The error number describing the error.
buffP- Pointer to the data buffer holding the error text, This object takes ownership of the buffer and recycles it.
Returns
code - The error number.

References XrdOucEI::code.

◆ setErrMid()

void XrdOucErrInfo::setErrMid ( int  mid)
inline

Set the monitoring identifier.

Returns
The monitoring identifier.

◆ setErrUser()

void XrdOucErrInfo::setErrUser ( const char *  user)
inline

Set user pointer.

Parameters
user- Pointer to a stable storage area containing the username.

References XrdOucEI::user.

◆ setUCap()

void XrdOucErrInfo::setUCap ( int  ucval)
inline

Set user capabilties.

Member Data Documentation

◆ @15

union { ... }

◆ dataBuff

XrdOucBuffer* XrdOucErrInfo::dataBuff
protected

Referenced by operator=().

◆ dOff

short XrdOucErrInfo::dOff
protected

◆ ErrCB

XrdOucEICB* XrdOucErrInfo::ErrCB
protected

Referenced by operator=().

◆ ErrCBarg

unsigned long long XrdOucErrInfo::ErrCBarg

Referenced by operator=().

◆ ErrEnv

XrdOucEnv* XrdOucErrInfo::ErrEnv

◆ ErrInfo

XrdOucEI XrdOucErrInfo::ErrInfo
protected

Referenced by operator=().

◆ mID

int XrdOucErrInfo::mID
protected

Referenced by operator=().

◆ reserved

short XrdOucErrInfo::reserved
protected

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