xrootd
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
XrdCmsNode Class Reference

#include <XrdCmsNode.hh>

Collaboration diagram for XrdCmsNode:
Collaboration graph
[legend]

Public Member Functions

const char * do_Avail (XrdCmsRRData &Arg)
 
const char * do_Chmod (XrdCmsRRData &Arg)
 
const char * do_Disc (XrdCmsRRData &Arg)
 
const char * do_Gone (XrdCmsRRData &Arg)
 
const char * do_Have (XrdCmsRRData &Arg)
 
const char * do_Load (XrdCmsRRData &Arg)
 
const char * do_Locate (XrdCmsRRData &Arg)
 
const char * do_Mkdir (XrdCmsRRData &Arg)
 
const char * do_Mkpath (XrdCmsRRData &Arg)
 
const char * do_Mv (XrdCmsRRData &Arg)
 
const char * do_Ping (XrdCmsRRData &Arg)
 
const char * do_Pong (XrdCmsRRData &Arg)
 
const char * do_PrepAdd (XrdCmsRRData &Arg)
 
const char * do_PrepDel (XrdCmsRRData &Arg)
 
const char * do_Rm (XrdCmsRRData &Arg)
 
const char * do_Rmdir (XrdCmsRRData &Arg)
 
int do_SelAvoid (XrdCmsRRData &Arg, XrdCmsSelect &Sel, char *Avoid, bool &doRedir)
 
const char * do_Select (XrdCmsRRData &Arg)
 
const char * do_Space (XrdCmsRRData &Arg)
 
const char * do_State (XrdCmsRRData &Arg)
 
int do_StateFWD (XrdCmsRRData &Arg)
 
const char * do_StatFS (XrdCmsRRData &Arg)
 
const char * do_Stats (XrdCmsRRData &Arg)
 
const char * do_Status (XrdCmsRRData &Arg)
 
const char * do_Trunc (XrdCmsRRData &Arg)
 
const char * do_Try (XrdCmsRRData &Arg)
 
const char * do_Update (XrdCmsRRData &Arg)
 
const char * do_Usage (XrdCmsRRData &Arg)
 
void Delete (XrdSysMutex &gMutex)
 
void Disc (const char *reason=0, int needLock=1)
 
int ID (int &INum)
 
int Inst ()
 
bool inDomain ()
 
int isNode (SMask_t smask)
 
int isNode (const XrdNetAddr *addr)
 
int isNode (XrdLink *lp, const char *nid, int port)
 
char * Name ()
 
SMask_t Mask ()
 
void g2Ref (XrdSysMutex &gMutex)
 
void Ref2g (XrdSysMutex &gMutex)
 
void g2nLock (XrdSysMutex &gMutex)
 
void n2gLock (XrdSysMutex &gMutex)
 
void Lock (bool doinc)
 
void UnLock ()
 
int Send (const char *buff, int blen=0)
 
int Send (const struct iovec *iov, int iovcnt, int iotot=0)
 
void setManager (XrdCmsManager *mP)
 
void setName (XrdLink *lnkp, const char *theIF, int port)
 
void setShare (int shrval)
 
int setTZone (int tZone)
 
void setVersion (unsigned short vnum)
 
void setSlot (short rslot)
 
short getSlot ()
 
void ShowIF ()
 
void SyncSpace ()
 
 XrdCmsNode (XrdLink *lnkp, const char *theIF=0, const char *sid=0, int port=0, int lvl=0, int id=-1)
 
 ~XrdCmsNode ()
 

Static Public Member Functions

static int do_LocFmt (char *buff, XrdCmsSelected *sP, SMask_t pf, SMask_t wf, bool lsall=false, bool lsuniq=false)
 
static int do_SelPrep (XrdCmsPrepArgs &Arg)
 
static void do_StateDFS (XrdCmsBaseFR *rP, int rc)
 
static void Report_Usage (XrdLink *lp)
 

Public Attributes

char * Ident
 
char hasNet
 
char isBad
 
char isOffline
 
char isRW
 
char isNoStage
 
char isMan
 
char isPeer
 
char isBound
 
char isKnown
 
char isConn
 
char isGone
 
char isPerm
 
char incUL
 
char RoleID
 
char TimeZone
 
char TZValid
 
unsigned int DiskTotal
 
int DiskNums
 
int DiskMinF
 
int DiskFree
 
int DiskUtil
 
unsigned int ConfigID
 

Static Public Attributes

static const char isBlisted = 0x01
 
static const char isDisabled = 0x02
 
static const char isSuspend = 0x04
 
static const char isDoomed = 0x08
 
static const char allowsRW = 0x01
 
static const char allowsSS = 0x02
 

Private Member Functions

void DeleteWarn (XrdSysMutex &gMutex, unsigned int &lkVal)
 
int fsExec (XrdOucProg *Prog, char *Arg1, char *Arg2=0)
 
const char * fsFail (const char *Who, const char *What, const char *Path, int rc)
 
int getMode (const char *theMode, mode_t &Mode)
 
int getSize (const char *theSize, long long &Size)
 

Private Attributes

XrdSysCondVar nodeMutex
 
unsigned int lkCount
 
unsigned int ulCount
 
XrdLinkLink
 
XrdNetAddr netID
 
XrdNetIF netIF
 
XrdCmsManagerManager
 
XrdCmsNodeNext
 
time_t DropTime
 
XrdCmsDrop * DropJob
 
XrdCmsClustIDcidP
 
SMask_t NodeMask
 
int NodeID
 
int Instance
 
int myLevel
 
short subsPort
 
unsigned short myVersion
 
char * myCID
 
char * myNID
 
char * myName
 
int myNlen
 
int logload
 
int myCost
 
int myLoad
 
int myMass
 
int RefW
 
int RefTotW
 
int RefR
 
int RefTotR
 
short RSlot
 
char isLocked
 
char Share
 
char Shrem
 
char Shrip
 
char Rsvd [2]
 
int Shrin
 

Static Private Attributes

static const int fsL2PFail1 = 999991
 
static const int fsL2PFail2 = 999992
 
static XrdSysMutex mlMutex
 
static int LastFree
 

Friends

class XrdCmsCluster
 

Constructor & Destructor Documentation

XrdCmsNode::XrdCmsNode ( XrdLink lnkp,
const char *  theIF = 0,
const char *  sid = 0,
int  port = 0,
int  lvl = 0,
int  id = -1 
)
XrdCmsNode::~XrdCmsNode ( )

Member Function Documentation

void XrdCmsNode::Delete ( XrdSysMutex gMutex)
void XrdCmsNode::DeleteWarn ( XrdSysMutex gMutex,
unsigned int &  lkVal 
)
private
void XrdCmsNode::Disc ( const char *  reason = 0,
int  needLock = 1 
)
const char* XrdCmsNode::do_Avail ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Chmod ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Disc ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Gone ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Have ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Load ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Locate ( XrdCmsRRData Arg)
static int XrdCmsNode::do_LocFmt ( char *  buff,
XrdCmsSelected sP,
SMask_t  pf,
SMask_t  wf,
bool  lsall = false,
bool  lsuniq = false 
)
static
const char* XrdCmsNode::do_Mkdir ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Mkpath ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Mv ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Ping ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Pong ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_PrepAdd ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_PrepDel ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Rm ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Rmdir ( XrdCmsRRData Arg)
int XrdCmsNode::do_SelAvoid ( XrdCmsRRData Arg,
XrdCmsSelect Sel,
char *  Avoid,
bool &  doRedir 
)
const char* XrdCmsNode::do_Select ( XrdCmsRRData Arg)
static int XrdCmsNode::do_SelPrep ( XrdCmsPrepArgs Arg)
static

Referenced by XrdCmsPrepArgs::DoIt().

const char* XrdCmsNode::do_Space ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_State ( XrdCmsRRData Arg)
static void XrdCmsNode::do_StateDFS ( XrdCmsBaseFR rP,
int  rc 
)
static
int XrdCmsNode::do_StateFWD ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_StatFS ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Stats ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Status ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Trunc ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Try ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Update ( XrdCmsRRData Arg)
const char* XrdCmsNode::do_Usage ( XrdCmsRRData Arg)
int XrdCmsNode::fsExec ( XrdOucProg Prog,
char *  Arg1,
char *  Arg2 = 0 
)
private
const char* XrdCmsNode::fsFail ( const char *  Who,
const char *  What,
const char *  Path,
int  rc 
)
private
void XrdCmsNode::g2nLock ( XrdSysMutex gMutex)
inline
void XrdCmsNode::g2Ref ( XrdSysMutex gMutex)
inline

References lkCount, and XrdSysMutex::UnLock().

int XrdCmsNode::getMode ( const char *  theMode,
mode_t &  Mode 
)
private
int XrdCmsNode::getSize ( const char *  theSize,
long long &  Size 
)
private
short XrdCmsNode::getSlot ( )
inline

References RSlot.

int XrdCmsNode::ID ( int &  INum)
inline

References Instance, and NodeID.

bool XrdCmsNode::inDomain ( )
inline

References XrdNetIF::InDomain(), netID, and netIF.

int XrdCmsNode::Inst ( )
inline

References Instance.

int XrdCmsNode::isNode ( SMask_t  smask)
inline

References NodeMask.

int XrdCmsNode::isNode ( const XrdNetAddr addr)
inline

References netID, and XrdNetAddrInfo::Same().

int XrdCmsNode::isNode ( XrdLink lp,
const char *  nid,
int  port 
)
inline
void XrdCmsNode::Lock ( bool  doinc)
inline
SMask_t XrdCmsNode::Mask ( )
inline

References NodeMask.

void XrdCmsNode::n2gLock ( XrdSysMutex gMutex)
inline
char* XrdCmsNode::Name ( )
inline

References myName.

void XrdCmsNode::Ref2g ( XrdSysMutex gMutex)
inline

References lkCount, and XrdSysMutex::Lock().

static void XrdCmsNode::Report_Usage ( XrdLink lp)
static
int XrdCmsNode::Send ( const char *  buff,
int  blen = 0 
)
inline

References isOffline, Link, and XrdLink::Send().

int XrdCmsNode::Send ( const struct iovec *  iov,
int  iovcnt,
int  iotot = 0 
)
inline

References isOffline, Link, and XrdLink::Send().

void XrdCmsNode::setManager ( XrdCmsManager mP)
inline

References Manager.

void XrdCmsNode::setName ( XrdLink lnkp,
const char *  theIF,
int  port 
)
void XrdCmsNode::setShare ( int  shrval)
inline

References Share, Shrem, and Shrip.

void XrdCmsNode::setSlot ( short  rslot)
inline

References RSlot.

int XrdCmsNode::setTZone ( int  tZone)
inline

References TimeZone, and TZValid.

void XrdCmsNode::setVersion ( unsigned short  vnum)
inline

References myVersion.

void XrdCmsNode::ShowIF ( )
inline

References XrdNetIF::Display(), and netIF.

void XrdCmsNode::SyncSpace ( )
void XrdCmsNode::UnLock ( )
inline

Friends And Related Function Documentation

friend class XrdCmsCluster
friend

Member Data Documentation

const char XrdCmsNode::allowsRW = 0x01
static
const char XrdCmsNode::allowsSS = 0x02
static
XrdCmsClustID* XrdCmsNode::cidP
private
unsigned int XrdCmsNode::ConfigID
int XrdCmsNode::DiskFree
int XrdCmsNode::DiskMinF
int XrdCmsNode::DiskNums
unsigned int XrdCmsNode::DiskTotal
int XrdCmsNode::DiskUtil
XrdCmsDrop* XrdCmsNode::DropJob
private
time_t XrdCmsNode::DropTime
private
const int XrdCmsNode::fsL2PFail1 = 999991
staticprivate
const int XrdCmsNode::fsL2PFail2 = 999992
staticprivate
char XrdCmsNode::hasNet
char* XrdCmsNode::Ident
char XrdCmsNode::incUL

Referenced by g2nLock(), Lock(), n2gLock(), and UnLock().

int XrdCmsNode::Instance
private

Referenced by ID(), and Inst().

char XrdCmsNode::isBad
const char XrdCmsNode::isBlisted = 0x01
static
char XrdCmsNode::isBound
char XrdCmsNode::isConn
const char XrdCmsNode::isDisabled = 0x02
static
const char XrdCmsNode::isDoomed = 0x08
static
char XrdCmsNode::isGone

Referenced by n2gLock(), and UnLock().

char XrdCmsNode::isKnown
char XrdCmsNode::isLocked
private

Referenced by g2nLock(), Lock(), n2gLock(), and UnLock().

char XrdCmsNode::isMan
char XrdCmsNode::isNoStage
char XrdCmsNode::isOffline

Referenced by Send().

char XrdCmsNode::isPeer
char XrdCmsNode::isPerm
char XrdCmsNode::isRW
const char XrdCmsNode::isSuspend = 0x04
static
int XrdCmsNode::LastFree
staticprivate
XrdLink* XrdCmsNode::Link
private

Referenced by Send().

unsigned int XrdCmsNode::lkCount
private

Referenced by g2nLock(), g2Ref(), Lock(), and Ref2g().

int XrdCmsNode::logload
private
XrdCmsManager* XrdCmsNode::Manager
private

Referenced by setManager().

XrdSysMutex XrdCmsNode::mlMutex
staticprivate
char* XrdCmsNode::myCID
private
int XrdCmsNode::myCost
private
int XrdCmsNode::myLevel
private
int XrdCmsNode::myLoad
private
int XrdCmsNode::myMass
private
char* XrdCmsNode::myName
private

Referenced by Name().

char* XrdCmsNode::myNID
private

Referenced by isNode().

int XrdCmsNode::myNlen
private
unsigned short XrdCmsNode::myVersion
private

Referenced by setVersion().

XrdNetAddr XrdCmsNode::netID
private

Referenced by inDomain(), and isNode().

XrdNetIF XrdCmsNode::netIF
private

Referenced by inDomain(), isNode(), and ShowIF().

XrdCmsNode* XrdCmsNode::Next
private
int XrdCmsNode::NodeID
private

Referenced by ID().

SMask_t XrdCmsNode::NodeMask
private

Referenced by isNode(), and Mask().

XrdSysCondVar XrdCmsNode::nodeMutex
private

Referenced by g2nLock(), Lock(), n2gLock(), and UnLock().

int XrdCmsNode::RefR
private
int XrdCmsNode::RefTotR
private
int XrdCmsNode::RefTotW
private
int XrdCmsNode::RefW
private
char XrdCmsNode::RoleID
short XrdCmsNode::RSlot
private

Referenced by getSlot(), and setSlot().

char XrdCmsNode::Rsvd[2]
private
char XrdCmsNode::Share
private

Referenced by setShare().

char XrdCmsNode::Shrem
private

Referenced by setShare().

int XrdCmsNode::Shrin
private
char XrdCmsNode::Shrip
private

Referenced by setShare().

short XrdCmsNode::subsPort
private
char XrdCmsNode::TimeZone

Referenced by setTZone().

char XrdCmsNode::TZValid

Referenced by setTZone().

unsigned int XrdCmsNode::ulCount
private

Referenced by n2gLock(), and UnLock().


The documentation for this class was generated from the following file: