#include <XrdCmsResp.hh>
Inheritance diagram for XrdCmsResp:

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 |
| static XrdCmsResp * | Last |
| static XrdSysMutex | myMutex |
| static XrdCmsResp * | nextFree |
| static int | numFree |
| static const int | maxFree = 300 |
| static int | RepDelay |
Friends | |
| class | XrdCmsRespQ |
Definition at line 52 of file XrdCmsResp.hh.
| XrdCmsResp::XrdCmsResp | ( | ) | [inline] |
| XrdCmsResp::~XrdCmsResp | ( | ) | [inline] |
Definition at line 74 of file XrdCmsResp.hh.
| XrdCmsResp * XrdCmsResp::Alloc | ( | XrdOucErrInfo * | erp, | |
| int | msgid | |||
| ) | [static] |
Definition at line 50 of file XrdCmsResp.cc.
References XrdOucErrInfo::ErrCB, XrdOucErrInfo::ErrCBarg, XrdOucErrInfo::getErrCB(), XrdOucErrInfo::getErrText(), XrdOucErrInfo::getErrUser(), XrdCmsRespCB::Init(), XrdSysMutex::Lock(), myID, myMutex, next, nextFree, numFree, XrdOucErrInfo::setErrCB(), XrdOucErrInfo::setErrInfo(), strlcpy(), SyncCB, XrdSysMutex::UnLock(), UserID, and XrdCmsResp().
Referenced by XrdCmsClientMan::delayResp().
| void XrdCmsResp::Done | ( | int & | Result, | |
| XrdOucErrInfo * | eInfo | |||
| ) | [inline, virtual] |
| int XrdCmsResp::ID | ( | ) | [inline] |
Definition at line 61 of file XrdCmsResp.hh.
| void XrdCmsResp::Reply | ( | const char * | Man, | |
| XrdCms::CmsRRHdr & | rrhdr, | |||
| XrdNetBuffer * | netbuff | |||
| ) |
Definition at line 117 of file XrdCmsResp.cc.
References First, isReady, Last, XrdSysMutex::Lock(), myBuff, myRRHdr, next, XrdSysSemaphore::Post(), rdyMutex, strlcpy(), theMan, and XrdSysMutex::UnLock().
Referenced by XrdCmsClientMan::relayResp().
| void XrdCmsResp::Reply | ( | ) | [static] |
Definition at line 143 of file XrdCmsResp.cc.
References First, isReady, Last, XrdSysMutex::Lock(), next, rdyMutex, ReplyXeq(), XrdSysMutex::UnLock(), and XrdSysSemaphore::Wait().
Referenced by XrdCmsStartResp().
| static void XrdCmsResp::setDelay | ( | int | repdly | ) | [inline, static] |
Definition at line 71 of file XrdCmsResp.hh.
| void XrdCmsResp::Recycle | ( | ) | [private] |
Definition at line 92 of file XrdCmsResp.cc.
References XrdSysMutex::Lock(), maxFree, myBuff, myMutex, next, nextFree, numFree, XrdNetBuffer::Recycle(), and XrdSysMutex::UnLock().
Referenced by ReplyXeq().
| void XrdCmsResp::ReplyXeq | ( | ) | [private] |
Definition at line 164 of file XrdCmsResp.cc.
References XrdNetBuffer::data, DEBUG, XrdCmsParser::Decode(), XrdNetBuffer::dlen, XrdOucEICB::Done(), XrdSysError::Emsg(), EPNAME, XrdOucErrInfo::ErrCB, myBuff, myRRHdr, Recycle(), XrdFrm::Say(), SFS_DATA, SFS_ERROR, SFS_REDIRECT, SFS_STALL, sprintf(), XrdCms::CmsRRHdr::streamid, SyncCB, theMan, UserID, and XrdCmsRespCB::Wait().
Referenced by Reply().
friend class XrdCmsRespQ [friend] |
Definition at line 55 of file XrdCmsResp.hh.
XrdSysSemaphore XrdCmsResp::isReady [static, private] |
XrdSysMutex XrdCmsResp::rdyMutex [static, private] |
XrdCmsResp * XrdCmsResp::First [static, private] |
XrdCmsResp * XrdCmsResp::Last [static, private] |
XrdSysMutex XrdCmsResp::myMutex [static, private] |
XrdCmsResp * XrdCmsResp::nextFree [static, private] |
int XrdCmsResp::numFree [static, private] |
const int XrdCmsResp::maxFree = 300 [static, private] |
int XrdCmsResp::RepDelay [static, private] |
Definition at line 89 of file XrdCmsResp.hh.
XrdCms::CmsRRHdr XrdCmsResp::myRRHdr [private] |
XrdNetBuffer* XrdCmsResp::myBuff [private] |
char XrdCmsResp::theMan[64] [private] |
XrdCmsRespCB XrdCmsResp::SyncCB [private] |
XrdCmsResp* XrdCmsResp::next [private] |
Definition at line 96 of file XrdCmsResp.hh.
Referenced by XrdCmsRespQ::Add(), Alloc(), XrdCmsRespQ::Purge(), Recycle(), XrdCmsRespQ::Rem(), and Reply().
int XrdCmsResp::myID [private] |
Definition at line 97 of file XrdCmsResp.hh.
Referenced by XrdCmsRespQ::Add(), Alloc(), and XrdCmsRespQ::Rem().
char XrdCmsResp::UserID[64] [private] |
1.5.1