xrootd
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
XrdCl::URL Class Reference

URL representation. More...

#include <XrdClURL.hh>

Public Types

typedef std::map< std::string,
std::string > 
ParamsMap
 

Public Member Functions

 URL ()
 Default constructor. More...
 
 URL (const std::string &url)
 
bool IsValid () const
 Is the url valid. More...
 
bool IsMetalink () const
 Is it a URL to a metalink. More...
 
bool IsLocalFile () const
 
std::string GetURL () const
 Get the URL. More...
 
std::string GetHostId () const
 Get the host part of the URL (user:password@host:port) More...
 
std::string GetLocation () const
 Get location (protocol://host:port/path) More...
 
const std::string & GetProtocol () const
 Get the protocol. More...
 
void SetProtocol (const std::string &protocol)
 Set protocol. More...
 
const std::string & GetUserName () const
 Get the username. More...
 
void SetUserName (const std::string &userName)
 Set the username. More...
 
const std::string & GetPassword () const
 Get the password. More...
 
void SetPassword (const std::string &password)
 Set the password. More...
 
const std::string & GetHostName () const
 Get the name of the target host. More...
 
void SetHostName (const std::string &hostName)
 Set the host name. More...
 
int GetPort () const
 Get the target port. More...
 
void SetPort (int port)
 
void SetHostPort (const std::string &hostName, int port)
 
const std::string & GetPath () const
 Get the path. More...
 
void SetPath (const std::string &path)
 Set the path. More...
 
std::string GetPathWithParams () const
 Get the path with params. More...
 
std::string GetPathWithFilteredParams () const
 Get the path with params, filteres out 'xrdcl.'. More...
 
const ParamsMapGetParams () const
 Get the URL params. More...
 
std::string GetParamsAsString () const
 Get the URL params as string. More...
 
std::string GetParamsAsString (bool filter) const
 
void SetParams (const std::string &params)
 Set params. More...
 
void SetParams (const ParamsMap &params)
 Set params. More...
 
bool FromString (const std::string &url)
 Parse a string and fill the URL fields. More...
 
void Clear ()
 Clear the url. More...
 

Private Member Functions

bool ParseHostInfo (const std::string hhostInfo)
 
bool ParsePath (const std::string &path)
 
void ComputeHostId ()
 
void ComputeURL ()
 
bool PathEndsWith (const std::string &sufix) const
 

Private Attributes

std::string pHostId
 
std::string pProtocol
 
std::string pUserName
 
std::string pPassword
 
std::string pHostName
 
int pPort
 
std::string pPath
 
ParamsMap pParams
 
std::string pURL
 

Detailed Description

URL representation.

Member Typedef Documentation

typedef std::map<std::string, std::string> XrdCl::URL::ParamsMap

Map of get params

Constructor & Destructor Documentation

XrdCl::URL::URL ( )

Default constructor.

XrdCl::URL::URL ( const std::string &  url)

Constructor

Parameters
urlan url in format: protocol://user:password@host:port/path?param1=x&param2=y

Member Function Documentation

void XrdCl::URL::Clear ( )

Clear the url.

void XrdCl::URL::ComputeHostId ( )
private
void XrdCl::URL::ComputeURL ( )
private
bool XrdCl::URL::FromString ( const std::string &  url)

Parse a string and fill the URL fields.

std::string XrdCl::URL::GetHostId ( ) const
inline

Get the host part of the URL (user:password@host:port)

References pHostId.

const std::string& XrdCl::URL::GetHostName ( ) const
inline

Get the name of the target host.

References pHostName.

std::string XrdCl::URL::GetLocation ( ) const

Get location (protocol://host:port/path)

const ParamsMap& XrdCl::URL::GetParams ( ) const
inline

Get the URL params.

References pParams.

std::string XrdCl::URL::GetParamsAsString ( ) const

Get the URL params as string.

std::string XrdCl::URL::GetParamsAsString ( bool  filter) const

Get the URL params as string

Parameters
filter: if set to true filters out 'xrdcl.'
const std::string& XrdCl::URL::GetPassword ( ) const
inline

Get the password.

References pPassword.

const std::string& XrdCl::URL::GetPath ( ) const
inline

Get the path.

References pPath.

std::string XrdCl::URL::GetPathWithFilteredParams ( ) const

Get the path with params, filteres out 'xrdcl.'.

std::string XrdCl::URL::GetPathWithParams ( ) const

Get the path with params.

int XrdCl::URL::GetPort ( ) const
inline

Get the target port.

References pPort.

const std::string& XrdCl::URL::GetProtocol ( ) const
inline

Get the protocol.

References pProtocol.

std::string XrdCl::URL::GetURL ( ) const
inline

Get the URL.

References pURL.

const std::string& XrdCl::URL::GetUserName ( ) const
inline

Get the username.

References pUserName.

bool XrdCl::URL::IsLocalFile ( ) const

Is it a URL to a local file (file://localhost

bool XrdCl::URL::IsMetalink ( ) const

Is it a URL to a metalink.

bool XrdCl::URL::IsValid ( ) const

Is the url valid.

bool XrdCl::URL::ParseHostInfo ( const std::string  hhostInfo)
private
bool XrdCl::URL::ParsePath ( const std::string &  path)
private
bool XrdCl::URL::PathEndsWith ( const std::string &  sufix) const
private
void XrdCl::URL::SetHostName ( const std::string &  hostName)
inline

Set the host name.

References ComputeHostId(), ComputeURL(), and pHostName.

void XrdCl::URL::SetHostPort ( const std::string &  hostName,
int  port 
)
inline
void XrdCl::URL::SetParams ( const std::string &  params)

Set params.

void XrdCl::URL::SetParams ( const ParamsMap params)
inline

Set params.

References ComputeURL(), and pParams.

void XrdCl::URL::SetPassword ( const std::string &  password)
inline

Set the password.

References ComputeURL(), and pPassword.

void XrdCl::URL::SetPath ( const std::string &  path)
inline

Set the path.

References ComputeURL(), and pPath.

void XrdCl::URL::SetPort ( int  port)
inline

References ComputeHostId(), ComputeURL(), and pPort.

void XrdCl::URL::SetProtocol ( const std::string &  protocol)
inline

Set protocol.

References ComputeURL(), and pProtocol.

void XrdCl::URL::SetUserName ( const std::string &  userName)
inline

Set the username.

References ComputeHostId(), ComputeURL(), and pUserName.

Member Data Documentation

std::string XrdCl::URL::pHostId
private

Referenced by GetHostId().

std::string XrdCl::URL::pHostName
private
ParamsMap XrdCl::URL::pParams
private

Referenced by GetParams(), and SetParams().

std::string XrdCl::URL::pPassword
private

Referenced by GetPassword(), and SetPassword().

std::string XrdCl::URL::pPath
private

Referenced by GetPath(), and SetPath().

int XrdCl::URL::pPort
private

Referenced by GetPort(), SetHostPort(), and SetPort().

std::string XrdCl::URL::pProtocol
private

Referenced by GetProtocol(), and SetProtocol().

std::string XrdCl::URL::pURL
private

Referenced by GetURL().

std::string XrdCl::URL::pUserName
private

Referenced by GetUserName(), and SetUserName().


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