XrdCmsBaseFS Class Reference
#include <XrdCmsBaseFS.hh>
List of all members.
Classes |
| struct | dMoP |
| struct | RequestQ |
Public Member Functions |
| int | Exists (XrdCmsRRData &Arg, XrdCmsPInfo &Who, int noLim=0) |
| int | Exists (char *Path, int fnPos, int UpAT=0) |
| void | Init (int Opts, int DMlife, int DPLife) |
| int | isDFS () |
| int | Limit () |
| void | Limit (int rLim, int qMax) |
| int | Local () |
| void | Pacer () |
| void | Runner () |
| void | Start () |
| int | Trim () |
| int | Traverse () |
| | XrdCmsBaseFS (void(*theCB)(XrdCmsBaseFR *, int)) |
| | ~XrdCmsBaseFS () |
Static Public Attributes |
| static const int | Cntrl = 0x0001 |
| static const int | DFSys = 0x0002 |
| static const int | Immed = 0x0004 |
| static const int | Servr = 0x0100 |
Private Member Functions |
| int | Bypass () |
| int | FStat (char *Path, int fnPos, int upat=0) |
| int | hasDir (char *Path, int fnPos) |
| void | Queue (XrdCmsRRData &Arg, XrdCmsPInfo &Who, int dln, int Frc=0) |
| void | Xeq (XrdCmsBaseFR *rP) |
Private Attributes |
| XrdSysMutex | fsMutex |
| XrdOucHash< dMoP > | fsDirMP |
| void(* | cBack )(XrdCmsBaseFR *, int) |
| struct XrdCmsBaseFS::RequestQ | theQ |
| int | dmLife |
| int | dpLife |
| char | lclStat |
| char | preSel |
| char | dfsSys |
| char | Server |
| char | Fixed |
| char | Punt |
Constructor & Destructor Documentation
| XrdCmsBaseFS::XrdCmsBaseFS |
( |
void(*)(XrdCmsBaseFR *, int) |
theCB |
) |
[inline] |
| XrdCmsBaseFS::~XrdCmsBaseFS |
( |
|
) |
[inline] |
Member Function Documentation
| int XrdCmsBaseFS::Bypass |
( |
|
) |
[private] |
References Fixed, XrdSysMutex::Lock(), XrdCmsBaseFS::RequestQ::Mutex, XrdCmsBaseFS::RequestQ::pqFirst, XrdCmsBaseFS::RequestQ::rAgain, XrdSysTimer::Report(), XrdSysTimer::Reset(), XrdCmsBaseFS::RequestQ::rLeft, XrdCmsBaseFS::RequestQ::rLimit, theQ, and XrdSysMutex::UnLock().
Referenced by Exists().
| int XrdCmsBaseFS::Exists |
( |
char * |
Path, |
|
|
int |
fnPos, |
|
|
int |
UpAT = 0 | |
|
) |
| | |
References XrdCms::Config, DEBUG, XrdCmsConfig::DiskSS, dmLife, dpLife, EPNAME, XrdCmsPrepare::Exists(), fsDirMP, fsMutex, hasDir(), Hash_keepdata, XrdSysMutex::Lock(), XrdMpx::Opts, XrdCmsConfig::ossFS, XrdCms::PrepQ, XrdCmsBaseFS::dMoP::Present, XrdOucHash< T >::Rep(), XrdOss::Stat(), stat, XrdSysMutex::UnLock(), XRDOSS_resonly, and XRDOSS_updtatm.
References Bypass(), dmLife, Fixed, hasDir(), lclStat, XrdCmsRRData::Path, XrdCmsRRData::PathLen, Queue(), XrdCmsBaseFS::RequestQ::rLimit, XrdCmsPInfo::rovec, and theQ.
Referenced by XrdCmsNode::do_State(), XrdCmsNode::do_StateFWD(), XrdCmsCluster::SelDFS(), and Xeq().
| int XrdCmsBaseFS::FStat |
( |
char * |
Path, |
|
|
int |
fnPos, |
|
|
int |
upat = 0 | |
|
) |
| | [private] |
| int XrdCmsBaseFS::hasDir |
( |
char * |
Path, |
|
|
int |
fnPos | |
|
) |
| | [private] |
| void XrdCmsBaseFS::Init |
( |
int |
Opts, |
|
|
int |
DMlife, |
|
|
int |
DPLife | |
|
) |
| | |
References Cntrl, dfsSys, DFSys, dmLife, dpLife, Immed, lclStat, preSel, Server, and Servr.
Referenced by XrdCmsConfig::Configure1(), and XrdCmsConfig::xdfs().
| int XrdCmsBaseFS::isDFS |
( |
|
) |
[inline] |
| void XrdCmsBaseFS::Limit |
( |
int |
rLim, |
|
|
int |
qMax | |
|
) |
| | |
| int XrdCmsBaseFS::Limit |
( |
|
) |
[inline] |
| int XrdCmsBaseFS::Local |
( |
|
) |
[inline] |
| void XrdCmsBaseFS::Pacer |
( |
|
) |
|
References hasDir(), XrdSysMutex::Lock(), XrdCmsBaseFS::RequestQ::Mutex, XrdCmsBaseFR::Next, XrdCmsBaseFR::Path, XrdCmsBaseFR::PDirLen, XrdSysSemaphore::Post(), XrdCmsBaseFS::RequestQ::pqAvail, XrdCmsBaseFS::RequestQ::pqFirst, XrdCmsBaseFS::RequestQ::pqLast, XrdCmsBaseFS::RequestQ::rLimit, XrdCmsBaseFS::RequestQ::rqAvail, XrdCmsBaseFS::RequestQ::rqFirst, XrdCmsBaseFS::RequestQ::rqLast, theQ, XrdSysMutex::UnLock(), XrdSysTimer::Wait(), and XrdSysSemaphore::Wait().
References DEBUG, EPNAME, XrdSysMutex::Lock(), XrdCmsBaseFS::RequestQ::Mutex, XrdCmsBaseFR::Next, XrdCmsRRData::Path, XrdSysSemaphore::Post(), XrdCmsBaseFS::RequestQ::pqAvail, XrdCmsBaseFS::RequestQ::pqFirst, XrdCmsBaseFS::RequestQ::pqLast, XrdCmsBaseFS::RequestQ::qHWM, XrdCmsBaseFS::RequestQ::qMax, XrdCmsBaseFS::RequestQ::qNum, Say, theQ, XrdSysMutex::UnLock(), and Xeq().
Referenced by Exists().
| void XrdCmsBaseFS::Runner |
( |
|
) |
|
References XrdSysMutex::Lock(), XrdCmsBaseFS::RequestQ::Mutex, XrdCmsBaseFR::Next, XrdCmsBaseFS::RequestQ::qNum, XrdCmsBaseFS::RequestQ::rqAvail, XrdCmsBaseFS::RequestQ::rqFirst, XrdCmsBaseFS::RequestQ::rqLast, theQ, XrdSysMutex::UnLock(), XrdSysSemaphore::Wait(), and Xeq().
| void XrdCmsBaseFS::Start |
( |
|
) |
|
References DEBUG, dfsSys, dmLife, dpLife, EPNAME, Fixed, lclStat, preSel, Punt, XrdCmsBaseFS::RequestQ::qMax, XrdCmsBaseFS::RequestQ::rAgain, XrdCmsBaseFS::RequestQ::rLimit, XrdSysThread::Run(), Say, Server, theQ, XrdCmsBasePacer(), and XrdCmsBaseRunner().
Referenced by XrdCmsConfig::Configure2().
| int XrdCmsBaseFS::Traverse |
( |
|
) |
[inline] |
| int XrdCmsBaseFS::Trim |
( |
|
) |
[inline] |
References cBack, dmLife, Exists(), hasDir(), lclStat, XrdCmsBaseFR::Path, XrdCmsBaseFR::PDirLen, XrdCmsBaseFS::RequestQ::qMax, XrdCmsBaseFS::RequestQ::qNum, Say, and theQ.
Referenced by Queue(), and Runner().
Member Data Documentation
The documentation for this class was generated from the following files: