xrootd
|
#include <XrdCmsBaseFS.hh>
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 |
XrdCmsBaseFS::XrdCmsBaseFS | ( | void(*)(XrdCmsBaseFR *, int) | theCB | ) | [inline] |
XrdCmsBaseFS::~XrdCmsBaseFS | ( | ) | [inline] |
int XrdCmsBaseFS::Bypass | ( | ) | [private] |
References XrdSysTimer::Report(), and XrdSysTimer::Reset().
int XrdCmsBaseFS::Exists | ( | char * | Path, |
int | fnPos, | ||
int | UpAT = 0 |
||
) |
References XrdCms::Config, DEBUG, XrdCmsConfig::DiskSS, EPNAME, XrdCmsPrepare::Exists(), Hash_keepdata, XrdCms::CmsHaveRequest::Online, XrdMpx::Opts, XrdCmsConfig::ossFS, XrdCms::CmsHaveRequest::Pending, XrdCms::PrepQ, XrdCmsBaseFS::dMoP::Present, XrdOss::Stat(), stat(), XRDOSS_resonly, and XRDOSS_updtatm.
int XrdCmsBaseFS::Exists | ( | XrdCmsRRData & | Arg, |
XrdCmsPInfo & | Who, | ||
int | noLim = 0 |
||
) |
References Exists, XrdCmsRRData::Path, XrdCmsRRData::PathLen, and XrdCmsPInfo::rovec.
Referenced by XrdCmsNode::do_State(), XrdCmsNode::do_StateFWD(), and XrdCmsCluster::SelDFS().
int XrdCmsBaseFS::FStat | ( | char * | Path, |
int | fnPos, | ||
int | upat = 0 |
||
) | [private] |
int XrdCmsBaseFS::hasDir | ( | char * | Path, |
int | fnPos | ||
) | [private] |
References XrdCmsBaseFS::dMoP::Present.
void XrdCmsBaseFS::Init | ( | int | Opts, |
int | DMlife, | ||
int | DPLife | ||
) |
Referenced by XrdCmsConfig::Configure1(), and XrdCmsConfig::xdfs().
int XrdCmsBaseFS::isDFS | ( | ) | [inline] |
References dfsSys.
Referenced by XrdCmsConfig::Configure2(), XrdCmsNode::do_Gone(), XrdCmsNode::do_Have(), XrdCmsNode::do_StateFWD(), and XrdCmsCluster::Select().
int XrdCmsBaseFS::Limit | ( | ) | [inline] |
References XrdCmsBaseFS::RequestQ::rLimit, and theQ.
Referenced by XrdCmsNode::do_State(), and XrdCmsConfig::xdfs().
void XrdCmsBaseFS::Limit | ( | int | rLim, |
int | qMax | ||
) |
int XrdCmsBaseFS::Local | ( | ) | [inline] |
References lclStat.
Referenced by XrdCmsCluster::SelDFS().
void XrdCmsBaseFS::Pacer | ( | ) |
References XrdCmsBaseFR::Next, XrdCmsBaseFR::Path, XrdCmsBaseFR::PDirLen, and XrdSysTimer::Wait().
void XrdCmsBaseFS::Queue | ( | XrdCmsRRData & | Arg, |
XrdCmsPInfo & | Who, | ||
int | dln, | ||
int | Frc = 0 |
||
) | [private] |
References DEBUG, XrdSysError::Emsg(), EPNAME, XrdCmsRRData::Path, and XrdCms::Say.
void XrdCmsBaseFS::Runner | ( | ) |
References XrdCmsBaseFR::Next.
void XrdCmsBaseFS::Start | ( | ) |
References DEBUG, XrdSysError::Emsg(), EPNAME, XrdSysThread::Run(), XrdCms::Say, XrdCmsBasePacer(), and XrdCmsBaseRunner().
Referenced by XrdCmsConfig::Configure2().
int XrdCmsBaseFS::Traverse | ( | ) | [inline] |
References Punt.
Referenced by XrdCmsNode::do_StateFWD().
int XrdCmsBaseFS::Trim | ( | ) | [inline] |
References preSel.
Referenced by XrdCmsCluster::Select().
void XrdCmsBaseFS::Xeq | ( | XrdCmsBaseFR * | rP | ) | [private] |
References XrdSysError::Emsg(), Exists, XrdCmsBaseFR::Path, XrdCmsBaseFR::PDirLen, and XrdCms::Say.
void(* XrdCmsBaseFS::cBack)(XrdCmsBaseFR *, int) [private] |
const int XrdCmsBaseFS::Cntrl = 0x0001 [static] |
Referenced by XrdCmsConfig::xdfs().
char XrdCmsBaseFS::dfsSys [private] |
Referenced by isDFS().
const int XrdCmsBaseFS::DFSys = 0x0002 [static] |
Referenced by XrdCmsConfig::Configure1(), and XrdCmsConfig::xdfs().
int XrdCmsBaseFS::dmLife [private] |
int XrdCmsBaseFS::dpLife [private] |
char XrdCmsBaseFS::Fixed [private] |
XrdOucHash<dMoP> XrdCmsBaseFS::fsDirMP [private] |
XrdSysMutex XrdCmsBaseFS::fsMutex [private] |
const int XrdCmsBaseFS::Immed = 0x0004 [static] |
Referenced by XrdCmsConfig::Configure1(), and XrdCmsConfig::xdfs().
char XrdCmsBaseFS::lclStat [private] |
Referenced by Local().
char XrdCmsBaseFS::preSel [private] |
Referenced by Trim().
char XrdCmsBaseFS::Punt [private] |
Referenced by Traverse().
char XrdCmsBaseFS::Server [private] |
const int XrdCmsBaseFS::Servr = 0x0100 [static] |
Referenced by XrdCmsConfig::xdfs().
struct XrdCmsBaseFS::RequestQ XrdCmsBaseFS::theQ [private] |
Referenced by Limit().