xrootd
|
#include <XrdCmsResp.hh>
Public Member Functions | |
void | Done (int &Result, XrdOucErrInfo *eInfo) |
int | ID () |
void | Reply (const char *Man, XrdCms::CmsRRHdr &rrhdr, XrdNetBuffer *netbuff) |
int | Same (unsigned long long arg1, unsigned long long arg2) |
XrdCmsResp () | |
~XrdCmsResp () | |
Static Public Member Functions | |
static XrdCmsResp * | Alloc (XrdOucErrInfo *erp, int msgid) |
static void | Reply () |
static void | setDelay (int repdly) |
Private Member Functions | |
void | Recycle () |
void | ReplyXeq () |
Private Attributes | |
XrdCms::CmsRRHdr | myRRHdr |
XrdNetBuffer * | myBuff |
char | theMan [64] |
XrdCmsRespCB | SyncCB |
XrdCmsResp * | next |
int | myID |
char | UserID [64] |
Static Private Attributes | |
static XrdSysSemaphore | isReady |
static XrdSysMutex | rdyMutex |
static XrdCmsResp * | First = 0 |
static XrdCmsResp * | Last = 0 |
static XrdSysMutex | myMutex |
static XrdCmsResp * | nextFree = 0 |
static int | numFree = 0 |
static const int | maxFree = 300 |
static int | RepDelay = 5 |
Friends | |
class | XrdCmsRespQ |
XrdCmsResp::~XrdCmsResp | ( | ) | [inline] |
XrdCmsResp * XrdCmsResp::Alloc | ( | XrdOucErrInfo * | erp, |
int | msgid | ||
) | [static] |
References XrdOucErrInfo::ErrCB, XrdOucErrInfo::ErrCBarg, XrdOucErrInfo::getErrCB(), XrdOucErrInfo::getErrText(), XrdOucErrInfo::getErrUser(), XrdCmsRespCB::Init(), myID, next, XrdOucErrInfo::setErrCB(), XrdOucErrInfo::setErrInfo(), strlcpy(), SyncCB, and UserID.
Referenced by XrdCmsClientMan::delayResp().
void XrdCmsResp::Done | ( | int & | Result, |
XrdOucErrInfo * | eInfo | ||
) | [inline, virtual] |
Implements XrdOucEICB.
References Recycle().
int XrdCmsResp::ID | ( | ) | [inline] |
References myID.
void XrdCmsResp::Reply | ( | const char * | Man, |
XrdCms::CmsRRHdr & | rrhdr, | ||
XrdNetBuffer * | netbuff | ||
) |
References strlcpy().
Referenced by XrdCmsClientMan::relayResp().
void XrdCmsResp::Reply | ( | ) | [static] |
References next, and ReplyXeq().
Referenced by XrdCmsStartResp().
void XrdCmsResp::ReplyXeq | ( | ) | [private] |
References DEBUG, XrdCmsParser::Decode(), XrdOucEICB::Done(), XrdSysError::Emsg(), EPNAME, XrdCms::Say, SFS_DATA, SFS_ERROR, SFS_REDIRECT, and SFS_STALL.
Referenced by Reply().
int XrdCmsResp::Same | ( | unsigned long long | arg1, |
unsigned long long | arg2 | ||
) | [inline, virtual] |
Implements XrdOucEICB.
static void XrdCmsResp::setDelay | ( | int | repdly | ) | [inline, static] |
References RepDelay.
friend class XrdCmsRespQ [friend] |
XrdCmsResp * XrdCmsResp::First = 0 [static, private] |
XrdSysSemaphore XrdCmsResp::isReady [static, private] |
XrdCmsResp * XrdCmsResp::Last = 0 [static, private] |
const int XrdCmsResp::maxFree = 300 [static, private] |
Referenced by Recycle().
XrdNetBuffer* XrdCmsResp::myBuff [private] |
Referenced by XrdCmsResp().
int XrdCmsResp::myID [private] |
Referenced by XrdCmsRespQ::Add(), Alloc(), ID(), and XrdCmsRespQ::Rem().
XrdSysMutex XrdCmsResp::myMutex [static, private] |
XrdCms::CmsRRHdr XrdCmsResp::myRRHdr [private] |
XrdCmsResp* XrdCmsResp::next [private] |
Referenced by XrdCmsRespQ::Add(), Alloc(), XrdCmsRespQ::Purge(), XrdCmsRespQ::Rem(), Reply(), and XrdCmsResp().
XrdCmsResp * XrdCmsResp::nextFree = 0 [static, private] |
int XrdCmsResp::numFree = 0 [static, private] |
Referenced by Recycle().
XrdSysMutex XrdCmsResp::rdyMutex [static, private] |
int XrdCmsResp::RepDelay = 5 [static, private] |
Referenced by setDelay().
XrdCmsRespCB XrdCmsResp::SyncCB [private] |
Referenced by Alloc().
char XrdCmsResp::theMan[64] [private] |
char XrdCmsResp::UserID[64] [private] |
Referenced by Alloc().