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

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

Implements XrdProtocol.

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

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 
) [virtual]

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 XrdCmsJob::Alloc(), and 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: