XrdClientUrlSet Class Reference

#include <XrdClientUrlSet.hh>

List of all members.

Public Member Functions

 XrdClientUrlSet (XrdOucString urls)
 ~XrdClientUrlSet ()
XrdOucString GetServers ()
XrdClientUrlInfoGetNextUrl ()
XrdClientUrlInfoGetARandomUrl ()
XrdClientUrlInfoGetARandomUrl (unsigned int seed)
void Rewind ()
void ShowUrls ()
void EraseUrl (XrdClientUrlInfo *url)
int Size ()
XrdOucString GetFile ()
bool IsValid ()

Private Member Functions

void CheckPort (int &port)
void ConvertDNSAlias (UrlArray &urls, XrdOucString proto, XrdOucString host, XrdOucString file)
double GetRandom (int seed=0)

Private Attributes

UrlArray fUrlArray
UrlArray fTmpUrlArray
XrdOucString fPathName
bool fIsValid
unsigned int fSeed


Detailed Description

Definition at line 35 of file XrdClientUrlSet.hh.


Constructor & Destructor Documentation

XrdClientUrlSet::XrdClientUrlSet ( XrdOucString  urls  ) 

Definition at line 84 of file XrdClientUrlSet.cc.

References XrdOucString::assign(), XrdOucString::beginswith(), ConvertDNSAlias(), XrdOucString::endswith(), XrdOucString::erasefromend(), XrdOucString::erasefromstart(), Error, FALSE, fIsValid, fPathName, fSeed, fUrlArray, XrdClientVector< T >::GetSize(), Info, XrdClientDebug::Instance(), XrdClientDebug::kDUMPDEBUG, XrdClientDebug::kHIDEBUG, XrdClientDebug::kUSERDEBUG, XrdOucString::length(), p1(), p2(), ShowUrls(), STR_NPOS, XrdOucString::tokenize(), and urls.

XrdClientUrlSet::~XrdClientUrlSet (  ) 

Definition at line 199 of file XrdClientUrlSet.cc.

References XrdClientVector< T >::Clear(), fTmpUrlArray, fUrlArray, XrdClientVector< T >::GetSize(), and i.


Member Function Documentation

void XrdClientUrlSet::CheckPort ( int &  port  )  [private]

Definition at line 309 of file XrdClientUrlSet.cc.

References Info, and XrdClientDebug::kHIDEBUG.

Referenced by ConvertDNSAlias().

void XrdClientUrlSet::ConvertDNSAlias ( UrlArray urls,
XrdOucString  proto,
XrdOucString  host,
XrdOucString  file 
) [private]

Definition at line 341 of file XrdClientUrlSet.cc.

References XrdOucString::c_str(), CheckPort(), XrdClientUrlInfo::File, free(), XrdNetDNS::getAddrName(), XrdClientUrlInfo::Host, XrdClientUrlInfo::HostAddr, i, Info, XrdClientDebug::kHIDEBUG, XrdClientUrlInfo::Port, XrdClientUrlInfo::Proto, and urls.

Referenced by XrdClientUrlSet().

double XrdClientUrlSet::GetRandom ( int  seed = 0  )  [private]

Definition at line 65 of file XrdClientUrlSet.cc.

References fSeed.

Referenced by GetARandomUrl().

XrdOucString XrdClientUrlSet::GetServers (  ) 

Definition at line 51 of file XrdClientUrlSet.cc.

References fUrlArray, XrdClientVector< T >::GetSize(), i, and s.

XrdClientUrlInfo * XrdClientUrlSet::GetNextUrl (  ) 

Definition at line 210 of file XrdClientUrlSet.cc.

References fTmpUrlArray, XrdClientVector< T >::GetSize(), XrdClientVector< T >::Pop_back(), retval, and Rewind().

XrdClientUrlInfo * XrdClientUrlSet::GetARandomUrl (  ) 

Definition at line 236 of file XrdClientUrlSet.cc.

References XrdClientVector< T >::Erase(), fTmpUrlArray, GetRandom(), XrdClientVector< T >::GetSize(), i, retval, Rewind(), and rnd.

Referenced by XrdClientAdmin::Connect(), and XrdClient::Open().

XrdClientUrlInfo * XrdClientUrlSet::GetARandomUrl ( unsigned int  seed  ) 

Definition at line 260 of file XrdClientUrlSet.cc.

References XrdClientVector< T >::Erase(), fTmpUrlArray, XrdClientVector< T >::GetSize(), retval, Rewind(), and rnd.

void XrdClientUrlSet::Rewind (  ) 

Definition at line 226 of file XrdClientUrlSet.cc.

References XrdClientVector< T >::Clear(), fTmpUrlArray, fUrlArray, XrdClientVector< T >::GetSize(), i, and XrdClientVector< T >::Push_back().

Referenced by XrdClientAdmin::Connect(), GetARandomUrl(), GetNextUrl(), and XrdClient::Open().

void XrdClientUrlSet::ShowUrls (  ) 

Definition at line 295 of file XrdClientUrlSet.cc.

References fUrlArray, XrdClientVector< T >::GetSize(), i, Info, and XrdClientDebug::kUSERDEBUG.

Referenced by XrdClientUrlSet().

void XrdClientUrlSet::EraseUrl ( XrdClientUrlInfo url  ) 

Definition at line 279 of file XrdClientUrlSet.cc.

References XrdClientVector< T >::Erase(), fUrlArray, XrdClientVector< T >::GetSize(), i, Info, and XrdClientDebug::kHIDEBUG.

Referenced by XrdClientAdmin::Connect(), and XrdClient::Open().

int XrdClientUrlSet::Size (  )  [inline]

Definition at line 71 of file XrdClientUrlSet.hh.

References fUrlArray, and XrdClientVector< T >::GetSize().

Referenced by XrdClientAdmin::Connect(), and XrdClient::Open().

XrdOucString XrdClientUrlSet::GetFile (  )  [inline]

Definition at line 74 of file XrdClientUrlSet.hh.

References fPathName.

bool XrdClientUrlSet::IsValid (  )  [inline]

Definition at line 76 of file XrdClientUrlSet.hh.

References fIsValid.

Referenced by XrdClientAdmin::Connect(), and XrdClient::Open().


Member Data Documentation

UrlArray XrdClientUrlSet::fUrlArray [private]

Definition at line 37 of file XrdClientUrlSet.hh.

Referenced by EraseUrl(), GetServers(), Rewind(), ShowUrls(), Size(), XrdClientUrlSet(), and ~XrdClientUrlSet().

UrlArray XrdClientUrlSet::fTmpUrlArray [private]

Definition at line 38 of file XrdClientUrlSet.hh.

Referenced by GetARandomUrl(), GetNextUrl(), Rewind(), and ~XrdClientUrlSet().

XrdOucString XrdClientUrlSet::fPathName [private]

Definition at line 39 of file XrdClientUrlSet.hh.

Referenced by GetFile(), and XrdClientUrlSet().

bool XrdClientUrlSet::fIsValid [private]

Definition at line 41 of file XrdClientUrlSet.hh.

Referenced by IsValid(), and XrdClientUrlSet().

unsigned int XrdClientUrlSet::fSeed [private]

Definition at line 42 of file XrdClientUrlSet.hh.

Referenced by GetRandom(), and XrdClientUrlSet().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:18 2011 for ROOT_528-00b_version by  doxygen 1.5.1