xrootd
Loading...
Searching...
No Matches
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 (XrdSysRWLock &gMutex)
 
void Delete (XrdSysMutex &gMutex)
 
void Delete (XrdSysFusedMutex &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 g2nLock (XrdSysRWLock &gMutex)
 
void n2gLock (XrdSysRWLock &gMutex, bool rdlock=false)
 
void Lock ()
 
void UnLock ()
 
void Ref ()
 
void unRef ()
 
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 = 0
 
char hasNet = 0
 
char isBad = 0
 
char isOffline
 
char isRW = 0
 
char isNoStage = 0
 
char isMan = 0
 
char isPeer = 0
 
char isBound = 0
 
char isKnown = 0
 
char isConn = 0
 
char isGone = 0
 
char isPerm = 0
 
char rsvd = 0
 
char RoleID = 0
 
char TimeZone = 0
 
char TZValid = 0
 
unsigned int DiskTotal = 0
 
int DiskNums = 0
 
int DiskMinF = 0
 
int DiskFree = 0
 
int DiskUtil = 0
 
unsigned int ConfigID = 0
 

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 (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)
 
void setHash (XrdCmsSelect &Sel, int acount)
 

Private Attributes

XrdSysMutex nodeMutex
 
RAtomic_uint refCnt {0}
 
XrdLinkLink
 
XrdNetAddr netID
 
XrdNetIF netIF
 
XrdCmsManagerManager = 0
 
time_t DropTime = 0
 
XrdCmsDrop * DropJob = 0
 
XrdCmsClustIDcidP = 0
 
SMask_t NodeMask
 
int NodeID
 
int Instance
 
int myLevel
 
short subsPort = 0
 
unsigned short myVersion
 
char * myCID
 
char * myNID
 
char * myName = 0
 
int myNlen = 0
 
int logload
 
int myCost = 0
 
int myLoad = 0
 
int myMass = 0
 
RAtomic_int RefW {0}
 
RAtomic_int RefTotW {0}
 
RAtomic_int RefR {0}
 
RAtomic_int RefTotR {0}
 
short RSlot = 0
 
char Share = 0
 
RAtomic_char Shrem {0}
 
RAtomic_char Shrin {0}
 
char Shrip = 0
 
char Rsvd [3]
 

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::XrdCmsNode ( XrdLink lnkp,
const char *  theIF = 0,
const char *  sid = 0,
int  port = 0,
int  lvl = 0,
int  id = -1 
)

◆ ~XrdCmsNode()

XrdCmsNode::~XrdCmsNode ( )

Member Function Documentation

◆ Delete() [1/3]

void XrdCmsNode::Delete ( XrdSysFusedMutex gMutex)

◆ Delete() [2/3]

void XrdCmsNode::Delete ( XrdSysMutex gMutex)
inline

References Delete().

◆ Delete() [3/3]

void XrdCmsNode::Delete ( XrdSysRWLock gMutex)
inline

References Delete().

Referenced by Delete(), and Delete().

◆ DeleteWarn()

void XrdCmsNode::DeleteWarn ( unsigned int  lkVal)
private

◆ Disc()

void XrdCmsNode::Disc ( const char *  reason = 0,
int  needLock = 1 
)

◆ do_Avail()

const char * XrdCmsNode::do_Avail ( XrdCmsRRData Arg)

◆ do_Chmod()

const char * XrdCmsNode::do_Chmod ( XrdCmsRRData Arg)

◆ do_Disc()

const char * XrdCmsNode::do_Disc ( XrdCmsRRData Arg)

◆ do_Gone()

const char * XrdCmsNode::do_Gone ( XrdCmsRRData Arg)

◆ do_Have()

const char * XrdCmsNode::do_Have ( XrdCmsRRData Arg)

◆ do_Load()

const char * XrdCmsNode::do_Load ( XrdCmsRRData Arg)

◆ do_Locate()

const char * XrdCmsNode::do_Locate ( XrdCmsRRData Arg)

◆ do_LocFmt()

static int XrdCmsNode::do_LocFmt ( char *  buff,
XrdCmsSelected sP,
SMask_t  pf,
SMask_t  wf,
bool  lsall = false,
bool  lsuniq = false 
)
static

◆ do_Mkdir()

const char * XrdCmsNode::do_Mkdir ( XrdCmsRRData Arg)

◆ do_Mkpath()

const char * XrdCmsNode::do_Mkpath ( XrdCmsRRData Arg)

◆ do_Mv()

const char * XrdCmsNode::do_Mv ( XrdCmsRRData Arg)

◆ do_Ping()

const char * XrdCmsNode::do_Ping ( XrdCmsRRData Arg)

◆ do_Pong()

const char * XrdCmsNode::do_Pong ( XrdCmsRRData Arg)

◆ do_PrepAdd()

const char * XrdCmsNode::do_PrepAdd ( XrdCmsRRData Arg)

◆ do_PrepDel()

const char * XrdCmsNode::do_PrepDel ( XrdCmsRRData Arg)

◆ do_Rm()

const char * XrdCmsNode::do_Rm ( XrdCmsRRData Arg)

◆ do_Rmdir()

const char * XrdCmsNode::do_Rmdir ( XrdCmsRRData Arg)

◆ do_SelAvoid()

int XrdCmsNode::do_SelAvoid ( XrdCmsRRData Arg,
XrdCmsSelect Sel,
char *  Avoid,
bool &  doRedir 
)

◆ do_Select()

const char * XrdCmsNode::do_Select ( XrdCmsRRData Arg)

◆ do_SelPrep()

static int XrdCmsNode::do_SelPrep ( XrdCmsPrepArgs Arg)
static

Referenced by XrdCmsPrepArgs::DoIt().

◆ do_Space()

const char * XrdCmsNode::do_Space ( XrdCmsRRData Arg)

◆ do_State()

const char * XrdCmsNode::do_State ( XrdCmsRRData Arg)

◆ do_StateDFS()

static void XrdCmsNode::do_StateDFS ( XrdCmsBaseFR rP,
int  rc 
)
static

◆ do_StateFWD()

int XrdCmsNode::do_StateFWD ( XrdCmsRRData Arg)

◆ do_StatFS()

const char * XrdCmsNode::do_StatFS ( XrdCmsRRData Arg)

◆ do_Stats()

const char * XrdCmsNode::do_Stats ( XrdCmsRRData Arg)

◆ do_Status()

const char * XrdCmsNode::do_Status ( XrdCmsRRData Arg)

◆ do_Trunc()

const char * XrdCmsNode::do_Trunc ( XrdCmsRRData Arg)

◆ do_Try()

const char * XrdCmsNode::do_Try ( XrdCmsRRData Arg)

◆ do_Update()

const char * XrdCmsNode::do_Update ( XrdCmsRRData Arg)

◆ do_Usage()

const char * XrdCmsNode::do_Usage ( XrdCmsRRData Arg)

◆ fsExec()

int XrdCmsNode::fsExec ( XrdOucProg Prog,
char *  Arg1,
char *  Arg2 = 0 
)
private

◆ fsFail()

const char * XrdCmsNode::fsFail ( const char *  Who,
const char *  What,
const char *  Path,
int  rc 
)
private

◆ g2nLock()

void XrdCmsNode::g2nLock ( XrdSysRWLock gMutex)
inline

◆ getMode()

int XrdCmsNode::getMode ( const char *  theMode,
mode_t &  Mode 
)
private

◆ getSize()

int XrdCmsNode::getSize ( const char *  theSize,
long long &  Size 
)
private

◆ getSlot()

short XrdCmsNode::getSlot ( )
inline

References RSlot.

◆ ID()

int XrdCmsNode::ID ( int &  INum)
inline

References Instance, and NodeID.

◆ inDomain()

bool XrdCmsNode::inDomain ( )
inline

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

◆ Inst()

int XrdCmsNode::Inst ( )
inline

References Instance.

◆ isNode() [1/3]

int XrdCmsNode::isNode ( const XrdNetAddr addr)
inline

References netID, and XrdNetAddrInfo::Same().

◆ isNode() [2/3]

int XrdCmsNode::isNode ( SMask_t  smask)
inline

References NodeMask.

◆ isNode() [3/3]

int XrdCmsNode::isNode ( XrdLink lp,
const char *  nid,
int  port 
)
inline

◆ Lock()

void XrdCmsNode::Lock ( )
inline

◆ Mask()

SMask_t XrdCmsNode::Mask ( )
inline

References NodeMask.

◆ n2gLock()

void XrdCmsNode::n2gLock ( XrdSysRWLock gMutex,
bool  rdlock = false 
)
inline

◆ Name()

char * XrdCmsNode::Name ( )
inline

References myName.

◆ Ref()

void XrdCmsNode::Ref ( )
inline

References refCnt.

◆ Report_Usage()

static void XrdCmsNode::Report_Usage ( XrdLink lp)
static

◆ Send() [1/2]

int XrdCmsNode::Send ( const char *  buff,
int  blen = 0 
)
inline

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

◆ Send() [2/2]

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

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

◆ setHash()

void XrdCmsNode::setHash ( XrdCmsSelect Sel,
int  acount 
)
private

◆ setManager()

void XrdCmsNode::setManager ( XrdCmsManager mP)
inline

References Manager.

◆ setName()

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

◆ setShare()

void XrdCmsNode::setShare ( int  shrval)
inline

References Share, Shrem, and Shrip.

◆ setSlot()

void XrdCmsNode::setSlot ( short  rslot)
inline

References RSlot.

◆ setTZone()

int XrdCmsNode::setTZone ( int  tZone)
inline

References TimeZone, and TZValid.

◆ setVersion()

void XrdCmsNode::setVersion ( unsigned short  vnum)
inline

References myVersion.

◆ ShowIF()

void XrdCmsNode::ShowIF ( )
inline

References XrdNetIF::Display(), and netIF.

◆ SyncSpace()

void XrdCmsNode::SyncSpace ( )

◆ UnLock()

void XrdCmsNode::UnLock ( )
inline

◆ unRef()

void XrdCmsNode::unRef ( )
inline

References refCnt.

Friends And Related Symbol Documentation

◆ XrdCmsCluster

friend class XrdCmsCluster
friend

Member Data Documentation

◆ allowsRW

const char XrdCmsNode::allowsRW = 0x01
static

◆ allowsSS

const char XrdCmsNode::allowsSS = 0x02
static

◆ cidP

XrdCmsClustID* XrdCmsNode::cidP = 0
private

◆ ConfigID

unsigned int XrdCmsNode::ConfigID = 0

◆ DiskFree

int XrdCmsNode::DiskFree = 0

◆ DiskMinF

int XrdCmsNode::DiskMinF = 0

◆ DiskNums

int XrdCmsNode::DiskNums = 0

◆ DiskTotal

unsigned int XrdCmsNode::DiskTotal = 0

◆ DiskUtil

int XrdCmsNode::DiskUtil = 0

◆ DropJob

XrdCmsDrop* XrdCmsNode::DropJob = 0
private

◆ DropTime

time_t XrdCmsNode::DropTime = 0
private

◆ fsL2PFail1

const int XrdCmsNode::fsL2PFail1 = 999991
staticprivate

◆ fsL2PFail2

const int XrdCmsNode::fsL2PFail2 = 999992
staticprivate

◆ hasNet

char XrdCmsNode::hasNet = 0

◆ Ident

char* XrdCmsNode::Ident = 0

◆ Instance

int XrdCmsNode::Instance
private

Referenced by ID(), and Inst().

◆ isBad

char XrdCmsNode::isBad = 0

◆ isBlisted

const char XrdCmsNode::isBlisted = 0x01
static

◆ isBound

char XrdCmsNode::isBound = 0

◆ isConn

char XrdCmsNode::isConn = 0

◆ isDisabled

const char XrdCmsNode::isDisabled = 0x02
static

◆ isDoomed

const char XrdCmsNode::isDoomed = 0x08
static

◆ isGone

char XrdCmsNode::isGone = 0

◆ isKnown

char XrdCmsNode::isKnown = 0

◆ isMan

char XrdCmsNode::isMan = 0

◆ isNoStage

char XrdCmsNode::isNoStage = 0

◆ isOffline

char XrdCmsNode::isOffline

Referenced by Send(), and Send().

◆ isPeer

char XrdCmsNode::isPeer = 0

◆ isPerm

char XrdCmsNode::isPerm = 0

◆ isRW

char XrdCmsNode::isRW = 0

◆ isSuspend

const char XrdCmsNode::isSuspend = 0x04
static

◆ LastFree

int XrdCmsNode::LastFree
staticprivate

◆ Link

XrdLink* XrdCmsNode::Link
private

Referenced by Send(), and Send().

◆ logload

int XrdCmsNode::logload
private

◆ Manager

XrdCmsManager* XrdCmsNode::Manager = 0
private

Referenced by setManager().

◆ mlMutex

XrdSysMutex XrdCmsNode::mlMutex
staticprivate

◆ myCID

char* XrdCmsNode::myCID
private

◆ myCost

int XrdCmsNode::myCost = 0
private

◆ myLevel

int XrdCmsNode::myLevel
private

◆ myLoad

int XrdCmsNode::myLoad = 0
private

◆ myMass

int XrdCmsNode::myMass = 0
private

◆ myName

char* XrdCmsNode::myName = 0
private

Referenced by Name().

◆ myNID

char* XrdCmsNode::myNID
private

Referenced by isNode().

◆ myNlen

int XrdCmsNode::myNlen = 0
private

◆ myVersion

unsigned short XrdCmsNode::myVersion
private

Referenced by setVersion().

◆ netID

XrdNetAddr XrdCmsNode::netID
private

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

◆ netIF

XrdNetIF XrdCmsNode::netIF
private

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

◆ NodeID

int XrdCmsNode::NodeID
private

Referenced by ID().

◆ NodeMask

SMask_t XrdCmsNode::NodeMask
private

Referenced by isNode(), and Mask().

◆ nodeMutex

XrdSysMutex XrdCmsNode::nodeMutex
private

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

◆ refCnt

RAtomic_uint XrdCmsNode::refCnt {0}
private

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

◆ RefR

RAtomic_int XrdCmsNode::RefR {0}
private

◆ RefTotR

RAtomic_int XrdCmsNode::RefTotR {0}
private

◆ RefTotW

RAtomic_int XrdCmsNode::RefTotW {0}
private

◆ RefW

RAtomic_int XrdCmsNode::RefW {0}
private

◆ RoleID

char XrdCmsNode::RoleID = 0

◆ RSlot

short XrdCmsNode::RSlot = 0
private

Referenced by getSlot(), and setSlot().

◆ rsvd

char XrdCmsNode::rsvd = 0

◆ Rsvd

char XrdCmsNode::Rsvd[3]
private

◆ Share

char XrdCmsNode::Share = 0
private

Referenced by setShare().

◆ Shrem

RAtomic_char XrdCmsNode::Shrem {0}
private

Referenced by setShare().

◆ Shrin

RAtomic_char XrdCmsNode::Shrin {0}
private

◆ Shrip

char XrdCmsNode::Shrip = 0
private

Referenced by setShare().

◆ subsPort

short XrdCmsNode::subsPort = 0
private

◆ TimeZone

char XrdCmsNode::TimeZone = 0

Referenced by setTZone().

◆ TZValid

char XrdCmsNode::TZValid = 0

Referenced by setTZone().


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