|
xrootd
|
#include <XrdCmsRRQ.hh>

Classes | |
| struct | Info |
Public Member Functions | |
| short | Add (short Snum, XrdCmsRRQInfo *ip) |
| void | Del (short Snum, const void *Key) |
| int | Init (int Tint=0, int Tdly=0) |
| int | Ready (int Snum, const void *Key, SMask_t mask1, SMask_t mask2) |
| void * | Respond () |
| void | Statistics (Info &Data) |
| void * | TimeOut () |
| XrdCmsRRQ () | |
| ~XrdCmsRRQ () | |
Private Member Functions | |
| int | sendLocResp (XrdCmsRRQSlot *lP) |
| void | sendResponse (XrdCmsRRQInfo *Info, int doredir, int totlen=0) |
Private Attributes | |
| XrdSysMutex | myMutex |
| XrdSysSemaphore | isWaiting |
| XrdSysSemaphore | isReady |
| XrdCmsRRQSlot | Slot [numSlots] |
| XrdOucDLlist< XrdCmsRRQSlot > | waitQ |
| XrdOucDLlist< XrdCmsRRQSlot > | readyQ |
| struct iovec | data_iov [iov_cnt] |
| struct iovec | redr_iov [iov_cnt] |
| XrdCms::CmsResponse | dataResp |
| XrdCms::CmsResponse | redrResp |
| XrdCms::CmsResponse | waitResp |
| union { | |
| char hostbuff [288] | |
| char databuff [XrdCms::CmsLocateRequest::RILen *STMax] | |
| }; | |
| Info | Stats |
| int | Tslice |
| int | Tdelay |
| unsigned int | myClock |
Static Private Attributes | |
| static const int | numSlots = 1024 |
| static const int | iov_cnt = 2 |
| XrdCmsRRQ::XrdCmsRRQ | ( | ) | [inline] |
| XrdCmsRRQ::~XrdCmsRRQ | ( | ) | [inline] |
| short XrdCmsRRQ::Add | ( | short | Snum, |
| XrdCmsRRQInfo * | ip | ||
| ) |
References XrdCmsRRQSlot::Alloc(), XrdCmsRRQInfo::Key, XrdCmsRRQInfo::isLU, XrdCmsRRQSlot::LkUp, XrdCmsRRQSlot::Cont, XrdCmsRRQSlot::Expire, XrdCmsRRQSlot::Link, and XrdCmsRRQSlot::slotNum.
Referenced by XrdCmsCache::Add2Q().
| void XrdCmsRRQ::Del | ( | short | Snum, |
| const void * | Key | ||
| ) |
Referenced by XrdCmsCache::Recycle().
| int XrdCmsRRQ::Init | ( | int | Tint = 0, |
| int | Tdly = 0 |
||
| ) |
References XrdCms::kYR_data, XrdCms::kYR_redirect, XrdCms::kYR_wait, XrdSysThread::Run(), XrdCmsRRQ_StartRespond(), XrdCms::Say, XrdSysError::Emsg(), and XrdCmsRRQ_StartTimeOut().
Referenced by XrdCmsConfig::setupManager().
| void * XrdCmsRRQ::Respond | ( | ) |
References XrdMonCtrCollector::port, XrdCmsRRQSlot::Link, XrdOucDLlist::Remove(), XrdCmsRRQSlot::Expire, XrdCmsRRQSlot::Info, XrdCmsRRQInfo::isLU, XrdCmsRRQSlot::Cont, XrdCmsRRQSlot::Arg1, XrdCmsRRQSlot::Arg2, XrdCmsRRQSlot::LkUp, XrdCms::Cluster, XrdCmsCluster::Select(), XrdCmsRRQInfo::isRW, XrdCmsRRQInfo::actR, and XrdCmsRRQSlot::Recycle().
Referenced by XrdCmsRRQ_StartRespond().
| int XrdCmsRRQ::sendLocResp | ( | XrdCmsRRQSlot * | lP | ) | [private] |
References XrdCmsRRQSlot::Arg1, XrdCmsRRQSlot::Info, XrdCmsRRQSlot::Cont, XrdCms::Cluster, XrdCmsCluster::List(), XrdCmsCluster::LS_IPO, XrdCmsNode::do_LocFmt(), XrdCmsRRQSlot::Arg2, XrdCmsRRQInfo::rwVec, XrdCms::RTable, XrdCmsRTable::Lock(), XrdCmsRTable::Find(), XrdCmsRRQInfo::Rnum, XrdCmsRRQInfo::Rinst, XrdCmsRRQInfo::ID, XrdCmsNode::Send(), and XrdCmsRTable::UnLock().
| void XrdCmsRRQ::sendResponse | ( | XrdCmsRRQInfo * | Info, |
| int | doredir, | ||
| int | totlen = 0 |
||
| ) | [private] |
| void XrdCmsRRQ::Statistics | ( | Info & | Data | ) | [inline] |
References myMutex, XrdSysMutex::Lock(), Stats, and XrdSysMutex::UnLock().
Referenced by XrdCmsCluster::Statt().
| void * XrdCmsRRQ::TimeOut | ( | ) |
References XrdSysTimer::Wait(), XrdCmsRRQSlot::Expire, XrdCmsRRQSlot::Link, and XrdOucDLlist::Remove().
Referenced by XrdCmsRRQ_StartTimeOut().
union { ... } [private] |
struct iovec XrdCmsRRQ::data_iov[iov_cnt] [private] |
| char XrdCmsRRQ::databuff[XrdCms::CmsLocateRequest::RILen *STMax] |
XrdCms::CmsResponse XrdCmsRRQ::dataResp [private] |
| char XrdCmsRRQ::hostbuff[288] |
const int XrdCmsRRQ::iov_cnt = 2 [static, private] |
XrdSysSemaphore XrdCmsRRQ::isReady [private] |
XrdSysSemaphore XrdCmsRRQ::isWaiting [private] |
unsigned int XrdCmsRRQ::myClock [private] |
XrdSysMutex XrdCmsRRQ::myMutex [private] |
Referenced by Statistics().
const int XrdCmsRRQ::numSlots = 1024 [static, private] |
XrdOucDLlist<XrdCmsRRQSlot> XrdCmsRRQ::readyQ [private] |
struct iovec XrdCmsRRQ::redr_iov[iov_cnt] [private] |
XrdCms::CmsResponse XrdCmsRRQ::redrResp [private] |
XrdCmsRRQSlot XrdCmsRRQ::Slot[numSlots] [private] |
Info XrdCmsRRQ::Stats [private] |
Referenced by Statistics().
int XrdCmsRRQ::Tdelay [private] |
int XrdCmsRRQ::Tslice [private] |
XrdOucDLlist<XrdCmsRRQSlot> XrdCmsRRQ::waitQ [private] |
XrdCms::CmsResponse XrdCmsRRQ::waitResp [private] |
1.7.5