XrdOucErrInfo Class Reference

#include <XrdOucErrInfo.hh>

Inheritance diagram for XrdOucErrInfo:
Inheritance graph
[legend]
Collaboration diagram for XrdOucErrInfo:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void clear ()
 Reset data and error information to null. Any appenadges are released.
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.
int getUCap ()
void setUCap (int ucval)
 Set user capabilties.
XrdOucErrInfooperator= (const XrdOucErrInfo &rhs)
 Assignment operator.
 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.

Protected Attributes

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

Detailed Description

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


Constructor & Destructor Documentation

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::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::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.
virtual XrdOucErrInfo::~XrdOucErrInfo (  )  [inline, virtual]

Destructor.

References Reset().


Member Function Documentation

void XrdOucErrInfo::clear (  )  [inline]

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

References XrdOucEI::clear(), ErrInfo, and Reset().

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.

References dataBuff.

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.

References ErrCB, and ErrEnv.

unsigned long long XrdOucErrInfo::getErrArg (  )  [inline]

Obtain the callback argument.

Returns:
The argument value currently in effect.

References ErrCBarg.

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.

References ErrCB, and ErrCBarg.

XrdOucEICB* XrdOucErrInfo::getErrCB (  )  [inline]

Get the callback object.

Returns:
Pointer to the callback object.

References ErrCB.

Referenced by XrdOucCallBack::Allowed(), and XrdOfsEvr::theClient::theClient().

const char* XrdOucErrInfo::getErrData (  )  [inline]

Get the error tracing data.

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

References dOff, ErrInfo, and XrdOucEI::message.

int XrdOucErrInfo::getErrInfo (  )  [inline]

Get the error code.

Returns:
The error code that was previously set.

References XrdOucEI::code, and ErrInfo.

int XrdOucErrInfo::getErrMid (  )  [inline]

Get the monitoring identifier.

Returns:
The monitoring identifier.

References mID.

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.

References XrdOucEI::code, XrdOucBuffer::Data(), dataBuff, ErrInfo, and XrdOucEI::message.

const char* XrdOucErrInfo::getErrText (  )  [inline]

Get a pointer to the error text.

Returns:
The pointer to the internal error text.

References XrdOucBuffer::Data(), dataBuff, ErrInfo, and XrdOucEI::message.

int XrdOucErrInfo::getErrTextLen (  )  [inline]

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

Returns:
The mesage length.

References dataBuff, XrdOucBuffer::DataLen(), ErrInfo, and XrdOucEI::message.

const char* XrdOucErrInfo::getErrUser (  )  [inline]

Get a pointer to user information.

Returns:
The pointer to the user string.

References ErrInfo, and XrdOucEI::user.

Referenced by XrdOfsEvr::theClient::theClient().

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.

References ErrInfo, and XrdOucEI::message.

int XrdOucErrInfo::getUCap (  )  [inline]

Get user capabilties.

Returns:
the user capabilities.

References ErrInfo, and XrdOucEI::ucap.

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

Assignment operator.

References XrdOucBuffer::Clone(), dataBuff, dOff, ErrCB, ErrCBarg, ErrInfo, and mID.

void XrdOucErrInfo::Reset (  )  [inline]

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

References XrdOucEI::code, dataBuff, ErrInfo, XrdOucEI::message, and XrdOucBuffer::Recycle().

Referenced by clear(), and ~XrdOucErrInfo().

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.

References ErrCB, and ErrEnv.

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

Set callback argument.

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

References ErrCBarg.

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.

References ErrCB, and ErrCBarg.

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, and ErrInfo.

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 dOff, ErrInfo, XrdOucEI::message, and strlcpy().

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, dataBuff, ErrInfo, and XrdOucBuffer::Recycle().

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, dataBuff, ErrInfo, XrdOucEI::message, XrdOucBuffer::Recycle(), and strlcpy().

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, dataBuff, ErrInfo, XrdOucEI::message, XrdOucBuffer::Recycle(), and strlcpy().

void XrdOucErrInfo::setErrMid ( int  mid  )  [inline]

Set the monitoring identifier.

Returns:
The monitoring identifier.

References mID.

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

Set user pointer.

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

References ErrInfo, and XrdOucEI::user.

void XrdOucErrInfo::setUCap ( int  ucval  )  [inline]

Set user capabilties.

References ErrInfo, and XrdOucEI::ucap.


Member Data Documentation

union { ... } [protected]
short XrdOucErrInfo::dOff [protected]

Referenced by getErrData(), operator=(), and setErrData().

unsigned long long XrdOucErrInfo::ErrCBarg

Referenced by getEnv(), and setEnv().

int XrdOucErrInfo::mID [protected]

Referenced by getErrMid(), operator=(), and setErrMid().

short XrdOucErrInfo::reserved [protected]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 5 Feb 2020 for xrootd by  doxygen 1.6.1