http://xml.apache.org/http://www.apache.org/http://www.w3.org/

Home

Readme
Download
Installation
Build

API Docs
Samples
Schema

FAQs
Programming
Migration

Releases
Bug-Reporting
Feedback

Y2K Compliance
PDF Document

CVS Repository
Mail Archive

API Docs for SAX and DOM
 

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

XMLUri Class Reference

#include <XMLUri.hpp>

List of all members.

Public Methods

 XMLUri (const XMLCh *const uriSpec)
 Construct a new URI from a URI specification string. More...

 XMLUri (const XMLUri *const baseURI,const XMLCh *const uriSpec)
 Construct a new URI from a base URI and a URI specification string. More...

virtual ~XMLUri ()
const XMLCh* getScheme ()const
 Get the scheme for this URI. More...

const XMLCh* getUserInfo ()const
 Get the userinfo for this URI. More...

const XMLCh* getHost ()const
 Get the host for this URI. More...

int getPort ()const
 Get the port for this URI. More...

const XMLCh* getPath ()const
 Get the path for this URI. More...

const XMLCh* getQueryString ()const
 Get the query string for this URI. More...

const XMLCh* getFragment ()const
 Get the fragment for this URI. More...

void setScheme (const XMLCh *const newScheme)
 Set the scheme for this URI. More...

void setUserInfo (const XMLCh *const newUserInfo)
 Set the userinfo for this URI. More...

void setHost (const XMLCh *const newHost)
 Set the host for this URI. More...

void setPort (int newPort)
 Set the port for this URI. More...

void setPath (const XMLCh *const newPath)
 Set the path for this URI. More...

void setQueryString (const XMLCh *const newQueryString)
 Set the query string for this URI. More...

void setFragment (const XMLCh *const newFragment)
 Set the fragment for this URI. More...


Constructor & Destructor Documentation

XMLUri::XMLUri ( const XMLCh *const uriSpec )
 

Construct a new URI from a URI specification string.

If the specification follows the "generic URI" syntax, (two slashes following the first colon), the specification will be parsed accordingly - setting the scheme, userinfo, host, port, path, querystring and fragment fields as necessary.

If the specification does not follow the "generic URI" syntax, the specification is parsed into a scheme and scheme-specific part (stored as the path) only.

Parameters:
uriSpec   the URI specification string (cannot be null or empty)

ctor# 2

XMLUri::XMLUri ( const XMLUri *const baseURI,
const XMLCh *const uriSpec )
 

Construct a new URI from a base URI and a URI specification string.

The URI specification string may be a relative URI.

Parameters:
base   the base URI (cannot be null if uriSpec is null or empty)
uriSpec   the URI specification string (cannot be null or empty if base is null)

ctor# 7 relative ctor

virtual XMLUri::~XMLUri ( ) [virtual]
 


Member Function Documentation

const XMLCh * XMLUri::getFragment ( ) const
 

Get the fragment for this URI.

Returns:
the fragment for this URI. Null is returned if there was no "#" in the URI spec, empty string if there was a "#" but no fragment following it.

const XMLCh * XMLUri::getHost ( ) const
 

Get the host for this URI.

Returns:
the host for this URI (null if not specified).

const XMLCh * XMLUri::getPath ( ) const
 

Get the path for this URI.

Note that the value returned is the path only and does not include the query string or fragment.

Returns:
the path for this URI.

int XMLUri::getPort ( ) const
 

Get the port for this URI.

Returns:
the port for this URI (-1 if not specified).

const XMLCh * XMLUri::getQueryString ( ) const
 

Get the query string for this URI.

Returns:
the query string for this URI. Null is returned if there was no "?" in the URI spec, empty string if there was a "?" but no query string following it.

const XMLCh * XMLUri::getScheme ( ) const
 

Get the scheme for this URI.

Returns:
the scheme for this URI

const XMLCh * XMLUri::getUserInfo ( ) const
 

Get the userinfo for this URI.

Returns:
the userinfo for this URI (null if not specified).

void XMLUri::setFragment ( const XMLCh *const newFragment )
 

Set the fragment for this URI.

A non-null value is valid only if this is a URI conforming to the generic URI syntax and the path value is not null.

Parameters:
fragment   the fragment for this URI

void XMLUri::setHost ( const XMLCh *const newHost )
 

Set the host for this URI.

If null is passed in, the userinfo field is also set to null and the port is set to -1.

Parameters:
newHost   the host for this URI

void XMLUri::setPath ( const XMLCh *const newPath )
 

Set the path for this URI.

If the supplied path is null, then the query string and fragment are set to null as well.

If the supplied path includes a query string and/or fragment, these fields will be parsed and set as well.

Note:

For URIs following the "generic URI" syntax, the path specified should start with a slash.

For URIs that do not follow the generic URI syntax, this method sets the scheme-specific part.

Parameters:
newPath   the path for this URI (may be null)

void XMLUri::setPort ( int newPort )
 

Set the port for this URI.

-1 is used to indicate that the port is not specified, otherwise valid port numbers are between 0 and 65535. If a valid port number is passed in and the host field is null, an exception is thrown.

Parameters:
newPort   the port number for this URI

void XMLUri::setQueryString ( const XMLCh *const newQueryString )
 

Set the query string for this URI.

A non-null value is valid only if this is an URI conforming to the generic URI syntax and the path value is not null.

Parameters:
newQueryString   the query string for this URI

void XMLUri::setScheme ( const XMLCh *const newScheme )
 

Set the scheme for this URI.

The scheme is converted to lowercase before it is set.

Parameters:
newScheme   the scheme for this URI (cannot be null)

void XMLUri::setUserInfo ( const XMLCh *const newUserInfo )
 

Set the userinfo for this URI.

If a non-null value is passed in and the host value is null, then an exception is thrown.

Parameters:
newUserinfo   the userinfo for this URI


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


Copyright © 2000 The Apache Software Foundation. All Rights Reserved.