xrootd
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | Friends

XrdCmsProtocol Class Reference

#include <XrdCmsProtocol.hh>

Inheritance diagram for XrdCmsProtocol:
Inheritance graph
[legend]
Collaboration diagram for XrdCmsProtocol:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void DoIt ()
int Execute (XrdCmsRRData &Data)
XrdProtocolMatch (XrdLink *lp)
int Process (XrdLink *lp)
void Recycle (XrdLink *lp, int consec, const char *reason)
int Stats (char *buff, int blen, int do_sync=0)
 XrdCmsProtocol ()
 ~XrdCmsProtocol ()

Static Public Member Functions

static XrdCmsProtocolAlloc (const char *theRole="", const char *theMan=0, int thePort=0)

Private Types

enum  Bearing { isDown, isLateral, isUp }

Private Member Functions

XrdCmsRoutingAdmit ()
XrdCmsRoutingAdmit_DataServer (int)
XrdCmsRoutingAdmit_Redirector (int)
XrdCmsRoutingAdmit_Supervisor (int)
SMask_t AddPath (XrdCmsNode *nP, const char *pType, const char *Path)
int Authenticate ()
void ConfigCheck (unsigned char *theConfig)
const char * Dispatch (Bearing cDir, int maxWait, int maxTries)
XrdCmsRoutingLogin_Failed (const char *Reason)
void Pander (const char *manager, int mport)
void Reissue (XrdCmsRRData &Data)
void Reply_Delay (XrdCmsRRData &Data, kXR_unt32 theDelay)
void Reply_Error (XrdCmsRRData &Data, int ecode, const char *etext)

Private Attributes

XrdCmsProtocolProtLink
XrdCmsRoutingRouting
XrdLinkLink
const char * myRole
const char * myMan
int myManPort
XrdCmsNodemyNode
short RSlot
char loggedIn

Static Private Attributes

static XrdSysMutex ProtMutex
static XrdCmsProtocolProtStack = 0
static XrdCmsParser ProtArgs
static const int maxReqSize = 16384
static int readWait = 1000

Friends

class XrdCmsJob

Member Enumeration Documentation

enum XrdCmsProtocol::Bearing [private]
Enumerator:
isDown 
isLateral 
isUp 

Constructor & Destructor Documentation

XrdCmsProtocol::XrdCmsProtocol ( ) [inline]
XrdCmsProtocol::~XrdCmsProtocol ( ) [inline]

Member Function Documentation

SMask_t XrdCmsProtocol::AddPath ( XrdCmsNode nP,
const char *  pType,
const char *  Path 
) [private]
XrdCmsRouting * XrdCmsProtocol::Admit ( ) [private]
XrdCmsRouting* XrdCmsProtocol::Admit_DataServer ( int  ) [private]
XrdCmsRouting * XrdCmsProtocol::Admit_Redirector ( int  wasSuspended) [private]
XrdCmsRouting* XrdCmsProtocol::Admit_Supervisor ( int  ) [private]
XrdCmsProtocol * XrdCmsProtocol::Alloc ( const char *  theRole = "",
const char *  theMan = 0,
int  thePort = 0 
) [static]
int XrdCmsProtocol::Authenticate ( ) [private]
void XrdCmsProtocol::ConfigCheck ( unsigned char *  theConfig) [private]
const char * XrdCmsProtocol::Dispatch ( Bearing  cDir,
int  maxWait,
int  maxTries 
) [private]
void XrdCmsProtocol::DoIt ( ) [virtual]

Implements XrdJob.

int XrdCmsProtocol::Execute ( XrdCmsRRData Data)
XrdCmsRouting * XrdCmsProtocol::Login_Failed ( const char *  Reason) [private]
XrdProtocol * XrdCmsProtocol::Match ( XrdLink lp) [virtual]
void XrdCmsProtocol::Pander ( const char *  manager,
int  mport 
) [private]

References XrdCmsManList::Add(), XrdCmsManager::Add(), XrdCmsState::All_Suspend, XrdCmsConfig::AskPing, XrdCmsConfig::asManager(), XrdCmsConfig::asPeer(), XrdCmsConfig::asProxy(), XrdCmsConfig::asServer(), XrdCms::CmsState, XrdCms::Config, XrdCmsManTree::Connect(), XrdInet::Connect(), DEBUG, XrdCmsManList::Del(), XrdCmsManTree::Disc(), XrdCmsConfig::DiskSS, XrdCmsConfig::doWait, XrdCms::CmsLoginData::dPort, XrdSysError::Emsg(), EPNAME, XrdCmsState::FES_Suspend, XrdCmsMeter::FreeSpace(), XrdCms::CmsLoginData::fsNum, XrdCms::CmsLoginData::fSpace, XrdCms::CmsLoginData::fsUtil, XrdCms::CmsLoginData::HoldTime, XrdNetDNS::IPAddr(), XrdCms::CmsLoginData::kYR_manager, XrdCms::CmsLoginData::kYR_nostage, XrdCms::CmsLoginData::kYR_peer, XrdCms::CmsLoginData::kYR_proxy, XrdCms::kYR_redirect, XrdCms::CmsLoginData::kYR_server, XrdCms::CmsLoginData::kYR_suspend, XrdCms::CmsLoginData::kYR_trying, XrdCms::kYR_Version, XrdCmsLogin::Login(), XrdCms::Manager, XrdCms::ManTree, XrdCms::manVOps, XrdCms::Meter, XrdCms::CmsLoginData::Mode, Mode, XrdCms::CmsLoginData::mSpace, XrdCms::myMans, XrdCmsConfig::myPaths, XrdCmsConfig::mySID, XrdCmsConfig::NetTCP, XrdCmsManList::Next(), XrdCmsState::NoStaging, XrdCmsMeter::numFS(), XrdCms::CmsLoginData::Paths, XrdCmsState::Port(), XrdCmsConfig::PortTCP, XrdCmsManTree::Register(), XrdCmsManager::Remove(), XrdCms::Say, XrdCms::CmsLoginData::SID, XrdCms::CmsLoginData::Size, XrdSysTimer::Snooze(), XrdCms::CmsLoginData::sPort, XrdCms::srvVOps, XrdCms::supVOps, XrdCmsState::Suspended, XrdCmsMeter::TotalSpace(), XrdCmsManTree::Trying(), XrdCms::CmsLoginData::tSpace, XrdCms::CmsLoginData::Version, and XRDNET_NOEMSG.

int XrdCmsProtocol::Process ( XrdLink lp) [virtual]
void XrdCmsProtocol::Recycle ( XrdLink lp,
int  consec,
const char *  reason 
) [virtual]

Implements XrdProtocol.

References XrdSysError::Emsg(), XrdLink::ID, and XrdCms::Say.

void XrdCmsProtocol::Reissue ( XrdCmsRRData Data) [private]
void XrdCmsProtocol::Reply_Delay ( XrdCmsRRData Data,
kXR_unt32  theDelay 
) [private]
void XrdCmsProtocol::Reply_Error ( XrdCmsRRData Data,
int  ecode,
const char *  etext 
) [private]
int XrdCmsProtocol::Stats ( char *  buff,
int  blen,
int  do_sync = 0 
) [inline, virtual]

Implements XrdProtocol.


Friends And Related Function Documentation

friend class XrdCmsJob [friend]

Member Data Documentation

Referenced by XrdCmsJob::Alloc().

char XrdCmsProtocol::loggedIn [private]

Referenced by Alloc().

const int XrdCmsProtocol::maxReqSize = 16384 [static, private]
const char* XrdCmsProtocol::myMan [private]

Referenced by Alloc().

Referenced by Alloc().

const char* XrdCmsProtocol::myRole [private]

Referenced by Alloc(), and XrdCmsJob::Alloc().

Referenced by Alloc().

XrdCmsProtocol * XrdCmsProtocol::ProtStack = 0 [static, private]
int XrdCmsProtocol::readWait = 1000 [static, private]
short XrdCmsProtocol::RSlot [private]

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