#include <XrdCmsManager.hh>
Public Member Functions | |
XrdCmsNode * | Add (XrdLink *lp, int Lvl) |
void | Inform (const char *What, const char *Data, int Dlen) |
void | Inform (const char *What, struct iovec *vP, int vN, int vT=0) |
void | Inform (XrdCms::CmsReqCode rCode, int rMod, const char *Arg=0, int Alen=0) |
void | Inform (XrdCms::CmsRRHdr &Hdr, const char *Arg=0, int Alen=0) |
int | Present () |
void | Remove (XrdCmsNode *nP, const char *reason=0) |
void | Reset () |
XrdCmsManager () | |
~XrdCmsManager () | |
Static Public Attributes | |
static const int | MTMax = 16 |
Private Attributes | |
XrdSysMutex | MTMutex |
XrdCmsNode * | MastTab [MTMax] |
int | MTHi |
Definition at line 36 of file XrdCmsManager.hh.
XrdCmsManager::XrdCmsManager | ( | ) |
XrdCmsManager::~XrdCmsManager | ( | ) | [inline] |
Definition at line 56 of file XrdCmsManager.hh.
XrdCmsNode * XrdCmsManager::Add | ( | XrdLink * | lp, | |
int | Lvl | |||
) |
Definition at line 52 of file XrdCmsManager.cc.
References XrdFrm::Config(), DEBUG, XrdSysError::Emsg(), EPNAME, i, XrdCmsNode::isBound, XrdCmsNode::isConn, XrdCmsNode::isMan, XrdCmsNode::isNoStage, XrdCmsNode::isOffline, XrdCmsNode::isSuspend, XrdSysMutex::Lock(), MastTab, MTHi, MTMax, MTMutex, XrdCmsNode::Name(), XrdLink::Name(), XrdFrm::Say(), XrdLink::setID(), and XrdSysMutex::UnLock().
Referenced by XrdCmsProtocol::Pander().
void XrdCmsManager::Inform | ( | const char * | What, | |
const char * | Data, | |||
int | Dlen | |||
) |
Definition at line 99 of file XrdCmsManager.cc.
References DEBUG, EPNAME, i, XrdCmsNode::isOffline, XrdSysMutex::Lock(), XrdCmsNode::Lock(), MastTab, MTHi, MTMutex, XrdCmsNode::Name(), XrdCmsNode::Send(), XrdCmsNode::UnLock(), and XrdSysMutex::UnLock().
Referenced by XrdCmsNode::do_Gone(), XrdCmsNode::do_Have(), XrdCmsAdmin::do_RmDid(), XrdCmsAdmin::do_RmDud(), XrdCmsNode::do_Space(), Inform(), XrdCmsState::Monitor(), and XrdCmsNode::Report_Usage().
void XrdCmsManager::Inform | ( | const char * | What, | |
struct iovec * | vP, | |||
int | vN, | |||
int | vT = 0 | |||
) |
Definition at line 126 of file XrdCmsManager.cc.
References DEBUG, EPNAME, i, XrdCmsNode::isOffline, XrdSysMutex::Lock(), XrdCmsNode::Lock(), MastTab, MTHi, MTMutex, XrdCmsNode::Name(), XrdCmsNode::Send(), XrdCmsNode::UnLock(), and XrdSysMutex::UnLock().
void XrdCmsManager::Inform | ( | XrdCms::CmsReqCode | rCode, | |
int | rMod, | |||
const char * | Arg = 0 , |
|||
int | Alen = 0 | |||
) |
Definition at line 153 of file XrdCmsManager.cc.
References XrdCmsRouter::getName(), Inform(), and XrdCms::Router().
void XrdCmsManager::Inform | ( | XrdCms::CmsRRHdr & | Hdr, | |
const char * | Arg = 0 , |
|||
int | Alen = 0 | |||
) |
Definition at line 164 of file XrdCmsManager.cc.
References XrdCms::CmsRRHdr::datalen, XrdCmsRouter::getName(), Inform(), XrdCms::Router(), and XrdCms::CmsRRHdr::rrCode.
int XrdCmsManager::Present | ( | ) | [inline] |
Definition at line 49 of file XrdCmsManager.hh.
References MTHi.
Referenced by XrdCmsNode::do_Gone(), and XrdCmsNode::do_Have().
void XrdCmsManager::Remove | ( | XrdCmsNode * | nP, | |
const char * | reason = 0 | |||
) |
Definition at line 177 of file XrdCmsManager.cc.
References DEBUG, XrdSysError::Emsg(), EPNAME, XrdCmsNode::ID(), XrdCmsNode::Ident, XrdCmsNode::isOffline, XrdSysMutex::Lock(), MastTab, MTHi, MTMutex, XrdCmsNode::Name(), XrdFrm::Say(), and XrdSysMutex::UnLock().
Referenced by XrdCmsProtocol::Pander().
void XrdCmsManager::Reset | ( | ) |
Definition at line 214 of file XrdCmsManager.cc.
References DEBUG, EPNAME, i, XrdCmsNode::isKnown, XrdCmsNode::isOffline, XrdCms::kYR_status, XrdSysMutex::Lock(), XrdCmsNode::Lock(), MastTab, MTHi, MTMutex, XrdCmsNode::Name(), XrdCmsNode::Send(), XrdCmsNode::UnLock(), and XrdSysMutex::UnLock().
Referenced by XrdCmsProtocol::Admit(), and XrdCmsNode::do_Status().
const int XrdCmsManager::MTMax = 16 [static] |
Definition at line 40 of file XrdCmsManager.hh.
Referenced by Add(), and XrdCmsConfig::setupServer().
XrdSysMutex XrdCmsManager::MTMutex [private] |
XrdCmsNode* XrdCmsManager::MastTab[MTMax] [private] |
Definition at line 61 of file XrdCmsManager.hh.
Referenced by Add(), Inform(), Remove(), Reset(), and XrdCmsManager().
int XrdCmsManager::MTHi [private] |
Definition at line 63 of file XrdCmsManager.hh.
Referenced by Add(), Inform(), Present(), Remove(), Reset(), and XrdCmsManager().