LDAPUrl Class Reference

This class is used to analyze and store LDAP-Urls as returned by a LDAP-Server as Referrals and Search References. More...

#include <LDAPUrl.h>

List of all members.

Public Member Functions

 LDAPUrl (const std::string &url="")
 Create a new object from a string that contains a LDAP-Url.
 ~LDAPUrl ()
 Destructor.
int getPort () const
void setPort (int port)
 Set the port value of the URL.
int getScope () const
void setScope (const std::string &scope)
 Set the Scope part of the URL.
const std::string & getURLString () const
void setURLString (const std::string &url)
 Set the URL member attribute.
const std::string & getHost () const
void setHost (const std::string &host)
 Set the Host part of the URL.
const std::string & getScheme () const
void setScheme (const std::string &scheme)
 Set the Protocol Scheme of the URL.
const std::string & getDN () const
void setDN (const std::string &dn)
 Set the DN part of the URL.
const std::string & getFilter () const
void setFilter (const std::string &filter)
 Set the Filter part of the URL.
const StringListgetAttrs () const
void setAttrs (const StringList &attrs)
 Set the Attributes part of the URL.
void setExtensions (const StringList &ext)
const StringListgetExtensions () const
void percentDecode (const std::string &src, std::string &dest)
 Percent-decode a string.
void percentEncode (const std::string &src, std::string &dest, int flags=0) const
 Percent-encoded a string.

Protected Types

enum  mode {
  base, attrs, scope, filter,
  extensions
}

Protected Member Functions

void parseUrl ()
 Split the url string that is associated with this Object into it components.
void components2Url () const
 Generate an URL string from the components that were set with the various set.
void string2list (const std::string &src, StringList &sl, bool percentDecode=false)

Protected Attributes

bool regenerate
int m_Port
int m_Scope
std::string m_Host
std::string m_DN
std::string m_Filter
StringList m_Attrs
StringList m_Extensions
std::string m_urlString
std::string m_Scheme


Detailed Description

This class is used to analyze and store LDAP-Urls as returned by a LDAP-Server as Referrals and Search References.

LDAP-URLs are defined in RFC1959 and have the following format:
ldap://host:port/baseDN[?attr[?scope[?filter]]]


Member Enumeration Documentation

enum LDAPUrl::mode [protected]

Enumerator:
base 
attrs 
scope 
filter 
extensions 


Constructor & Destructor Documentation

LDAPUrl::LDAPUrl ( const std::string &  url = ""  ) 

Create a new object from a string that contains a LDAP-Url.

Parameters:
url The URL String

LDAPUrl::~LDAPUrl (  ) 

Destructor.


Member Function Documentation

int LDAPUrl::getPort (  )  const

Returns:
The part of the URL that is representing the network port

void LDAPUrl::setPort ( int  port  ) 

Set the port value of the URL.

Parameters:
dn The port value

int LDAPUrl::getScope (  )  const

Returns:
The scope part of the URL is returned.

void LDAPUrl::setScope ( const std::string &  scope  ) 

Set the Scope part of the URL.

Parameters:
scope The new scope

const string & LDAPUrl::getURLString (  )  const

Returns:
The complete URL as a string

void LDAPUrl::setURLString ( const std::string &  url  ) 

Set the URL member attribute.

Parameters:
url The URL String

const string & LDAPUrl::getHost (  )  const

Returns:
The hostname or IP-Address of the destination host.

void LDAPUrl::setHost ( const std::string &  host  ) 

Set the Host part of the URL.

Parameters:
host The new host part

const std::string & LDAPUrl::getScheme (  )  const

Returns:
The Protocol Scheme of the URL.

void LDAPUrl::setScheme ( const std::string &  scheme  ) 

Set the Protocol Scheme of the URL.

Parameters:
host The Protcol scheme. Allowed values are ldap,ldapi,ldaps and cldap

const string & LDAPUrl::getDN (  )  const

Returns:
The Base-DN part of the URL

void LDAPUrl::setDN ( const std::string &  dn  ) 

Set the DN part of the URL.

Parameters:
dn The new DN part

const string & LDAPUrl::getFilter (  )  const

Returns:
The Filter part of the URL

void LDAPUrl::setFilter ( const std::string &  filter  ) 

Set the Filter part of the URL.

Parameters:
filter The new Filter

const StringList & LDAPUrl::getAttrs (  )  const

Returns:
The List of attributes that was in the URL

void LDAPUrl::setAttrs ( const StringList attrs  ) 

Set the Attributes part of the URL.

Parameters:
attrs StringList constaining the List of Attributes

void LDAPUrl::setExtensions ( const StringList ext  ) 

const StringList & LDAPUrl::getExtensions (  )  const

void LDAPUrl::percentDecode ( const std::string &  src,
std::string &  dest 
)

Percent-decode a string.

Parameters:
src The string that is to be decoded
dest The decoded result string

void LDAPUrl::percentEncode ( const std::string &  src,
std::string &  dest,
int  flags = 0 
) const

Percent-encoded a string.

Parameters:
src The string that is to be encoded
dest The encoded result string
flags 

void LDAPUrl::parseUrl (  )  [protected]

Split the url string that is associated with this Object into it components.

The compontens of the URL can be access via the get...() methods. (this function is mostly for internal use and gets called automatically whenever necessary)

void LDAPUrl::components2Url (  )  const [protected]

Generate an URL string from the components that were set with the various set.

..() methods (this function is mostly for internal use and gets called automatically whenever necessary)

void LDAPUrl::string2list ( const std::string &  src,
StringList sl,
bool  percentDecode = false 
) [protected]


Member Data Documentation

bool LDAPUrl::regenerate [mutable, protected]

int LDAPUrl::m_Port [protected]

int LDAPUrl::m_Scope [protected]

std::string LDAPUrl::m_Host [protected]

std::string LDAPUrl::m_DN [protected]

std::string LDAPUrl::m_Filter [protected]

std::string LDAPUrl::m_urlString [mutable, protected]

std::string LDAPUrl::m_Scheme [protected]


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

Generated on Sat Jun 7 06:45:39 2008 for ldapsdk by  doxygen 1.5.5