The Micro C++ Library
micxx::URL Class Reference

The URL class implements a uniform resource locator as referenced by RFC 2396 and RFC 3305 etc. More...

#include <micxx/URL.hxx>

Inherits micxx::traits::ToString.

List of all members.

Public Member Functions

 URL ()
 Create a new URL.
 URL (const std::string &url)
 Create a new URL.
 URL (const std::string &scheme, const std::string &host, unsigned short port=0, const std::string &path="/", const std::string &user="", const std::string &password="", const std::string &query="")
 Create a new URL from the possible single parts.
virtual ~URL ()
 Destruct a URL.
const std::string & getScheme () const
const std::string & getUser () const
const std::string & getPassword () const
const std::string & getHost () const
unsigned short getPort () const
const std::string & getPath () const
const std::string & getQuery () const
void operator= (const std::string &url)
void setScheme (const std::string &scheme)
void setUser (const std::string &user)
void setPassword (const std::string &password)
void setHost (const std::string &host)
void setPort (unsigned short port)
void setPort (const std::string &port)
void setPath (const std::string &path)
void setQuery (const std::string &query)
void setParent (const URL &parent)
virtual std::string toString () const
 Returns a printable representation.

Static Public Attributes

static const char *const SCHEME_HTTP
static const char *const SCHEME_HTTPS
static const char *const SCHEME_FTP
static const char *const SCHEME_MAILTO
static const unsigned short DEFAULT_PORT_HTTP = 80
static const unsigned short DEFAULT_PORT_HTTPS = 443
static const unsigned short DEFAULT_PORT_FTP = 21
static const unsigned short DEFAULT_PORT_MAILTO = 25

Detailed Description

The URL class implements a uniform resource locator as referenced by RFC 2396 and RFC 3305 etc.

The generic syntax supported by URL is

scheme : // user:password @ host:port /path ? query

Author:
Norbert Klose
Date:
October, 2011

Constructor & Destructor Documentation

micxx::URL::URL ( )

Create a new URL.

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

Create a new URL.

micxx::URL::URL ( const std::string &  scheme,
const std::string &  host,
unsigned short  port = 0,
const std::string &  path = "/",
const std::string &  user = "",
const std::string &  password = "",
const std::string &  query = "" 
)

Create a new URL from the possible single parts.

virtual micxx::URL::~URL ( ) [virtual]

Destruct a URL.


Member Function Documentation

const std::string& micxx::URL::getHost ( ) const [inline]
    {
        return host;
    }
const std::string& micxx::URL::getPassword ( ) const [inline]
    {
        return password;
    }
const std::string& micxx::URL::getPath ( ) const [inline]
    {
        return path;
    }
unsigned short micxx::URL::getPort ( ) const
const std::string& micxx::URL::getQuery ( ) const [inline]
    {
        return query;
    }
const std::string& micxx::URL::getScheme ( ) const [inline]
    {
        return scheme;
    }
const std::string& micxx::URL::getUser ( ) const [inline]
    {
        return user;
    }
void micxx::URL::operator= ( const std::string &  url)
void micxx::URL::setHost ( const std::string &  host)
void micxx::URL::setParent ( const URL parent)
void micxx::URL::setPassword ( const std::string &  password)
void micxx::URL::setPath ( const std::string &  path)
void micxx::URL::setPort ( unsigned short  port)
void micxx::URL::setPort ( const std::string &  port)
void micxx::URL::setQuery ( const std::string &  query)
void micxx::URL::setScheme ( const std::string &  scheme)
void micxx::URL::setUser ( const std::string &  user)
virtual std::string micxx::URL::toString ( ) const [virtual]

Returns a printable representation.

Reimplemented from micxx::traits::ToString.


Member Data Documentation

const unsigned short micxx::URL::DEFAULT_PORT_FTP = 21 [static]
const unsigned short micxx::URL::DEFAULT_PORT_HTTP = 80 [static]
const unsigned short micxx::URL::DEFAULT_PORT_HTTPS = 443 [static]
const unsigned short micxx::URL::DEFAULT_PORT_MAILTO = 25 [static]
const char* const micxx::URL::SCHEME_FTP [static]
const char* const micxx::URL::SCHEME_HTTP [static]
const char* const micxx::URL::SCHEME_HTTPS [static]
const char* const micxx::URL::SCHEME_MAILTO [static]

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