#include <XrdClientUrlSet.hh>
Public Member Functions | |
XrdClientUrlSet (XrdOucString urls) | |
~XrdClientUrlSet () | |
XrdOucString | GetServers () |
XrdClientUrlInfo * | GetNextUrl () |
XrdClientUrlInfo * | GetARandomUrl () |
XrdClientUrlInfo * | GetARandomUrl (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 |
Definition at line 35 of file XrdClientUrlSet.hh.
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.
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] |
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] |
bool XrdClientUrlSet::IsValid | ( | ) | [inline] |
Definition at line 76 of file XrdClientUrlSet.hh.
References fIsValid.
Referenced by XrdClientAdmin::Connect(), and XrdClient::Open().
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] |
bool XrdClientUrlSet::fIsValid [private] |
unsigned int XrdClientUrlSet::fSeed [private] |