Singleton access to URL to virtual redirector mapping. More...
#include <XrdClRedirectorRegistry.hh>
Public Member Functions | |
~RedirectorRegistry () | |
Destructor. | |
XRootDStatus | Register (const URL &url) |
Creates a new virtual redirector and registers it (async). | |
XRootDStatus | RegisterAndWait (const URL &url) |
Creates a new virtual redirector and registers it (sync). | |
VirtualRedirector * | Get (const URL &url) const |
Get a virtual redirector associated with the given URL. | |
void | Release (const URL &url) |
Release the virtual redirector associated with the given URL. | |
Static Public Member Functions | |
static RedirectorRegistry & | Instance () |
Returns reference to the single instance. | |
Private Types | |
typedef std::map< std::string, std::pair< VirtualRedirector *, size_t > > | RedirectorMap |
Private Member Functions | |
XRootDStatus | RegisterImpl (const URL &url, ResponseHandler *handler) |
Register implementation. | |
RedirectorRegistry () | |
RedirectorRegistry (const RedirectorRegistry &) | |
RedirectorRegistry & | operator= (const RedirectorRegistry &) |
Static Private Member Functions | |
static URL | ConvertLocalfile (const URL &url) |
Private Attributes | |
RedirectorMap | pRegistry |
XrdSysMutex | pMutex |
Singleton access to URL to virtual redirector mapping.
typedef std::map< std::string, std::pair<VirtualRedirector*, size_t> > XrdCl::RedirectorRegistry::RedirectorMap [private] |
XrdCl::RedirectorRegistry::~RedirectorRegistry | ( | ) |
Destructor.
XrdCl::RedirectorRegistry::RedirectorRegistry | ( | ) | [inline, private] |
XrdCl::RedirectorRegistry::RedirectorRegistry | ( | const RedirectorRegistry & | ) | [private] |
Convert the old convention for accessing local metalink files: root://localfile//path/metalink.meta4 into: file://localhost/path/metalink.meta4
VirtualRedirector* XrdCl::RedirectorRegistry::Get | ( | const URL & | url | ) | const |
Get a virtual redirector associated with the given URL.
static RedirectorRegistry& XrdCl::RedirectorRegistry::Instance | ( | ) | [static] |
Returns reference to the single instance.
RedirectorRegistry& XrdCl::RedirectorRegistry::operator= | ( | const RedirectorRegistry & | ) | [private] |
XRootDStatus XrdCl::RedirectorRegistry::Register | ( | const URL & | url | ) |
Creates a new virtual redirector and registers it (async).
XRootDStatus XrdCl::RedirectorRegistry::RegisterAndWait | ( | const URL & | url | ) |
Creates a new virtual redirector and registers it (sync).
XRootDStatus XrdCl::RedirectorRegistry::RegisterImpl | ( | const URL & | url, | |
ResponseHandler * | handler | |||
) | [private] |
Register implementation.
void XrdCl::RedirectorRegistry::Release | ( | const URL & | url | ) |
Release the virtual redirector associated with the given URL.
XrdSysMutex XrdCl::RedirectorRegistry::pMutex [mutable, private] |