/////////////////////////////////////////////////////////////////////////////
// Name: uri.h
-// Purpose: documentation for wxURI class
+// Purpose: interface of wxURI
// Author: wxWidgets team
// RCS-ID: $Id$
// Licence: wxWindows license
@library{wxbase}
@category{data}
- @seealso
- wxURL
+ @see wxURL
*/
class wxURI : public wxObject
{
//@{
/**
Copies this URI from another URI.
-
+
@param uri
URI (Uniform Resource Identifier) to initialize with
*/
the URI that is returned from Get is the same one
passed to Create.
*/
- wxString BuildURI();
+ wxString BuildURI() const;
/**
Builds the URI from its individual components, adds proper separators, and
Note that it is preferred to call this over Unescape(BuildURI()) since
BuildUnescapedURI() performs some optimizations over the plain method.
*/
- wxString BuildUnescapedURI();
+ wxString BuildUnescapedURI() const;
/**
Creates this URI from the string
-
+
@param uri.
-
+
Returns the position at which parsing stopped (there
is no such thing as an "invalid" wxURI).
-
+
uri
string to initialize from
*/
of the URI.
@c http://mysite.com/mypath#fragment
*/
- const wxString GetFragment();
+ const wxString GetFragment() const;
/**
Obtains the host type of this URI, which is of type
HostType():
-
+
@b wxURI_REGNAME
-
+
Server is a host name, or the Server component itself is undefined.
-
+
@b wxURI_IPV4ADDRESS
-
+
Server is a IP version 4 address (XXX.XXX.XXX.XXX)
-
+
@b wxURI_IPV6ADDRESS
-
+
Server is a IP version 6 address ((XXX:)XXX::(XXX)XXX:XXX
-
+
@b wxURI_IPVFUTURE
-
+
Server is an IP address, but not versions 4 or 6
*/
- const HostType GetHostType();
+ const HostType GetHostType() const;
/**
Returns the password part of the userinfo component of
RFC 1396 and should generally be avoided if possible.
@c http://user:password@mysite.com/mypath
*/
- const wxString GetPassword();
+ const wxString GetPassword() const;
/**
Returns the (normalized) path of the URI.
character.
@c http://mysite.compath
*/
- const wxString GetPath();
+ const wxString GetPath() const;
/**
Returns a string representation of the URI's port.
Note that you can easily get the numeric value of the port
by using wxAtoi or wxString::Format.
*/
- const wxString GetPort();
+ const wxString GetPort() const;
/**
Returns the Query component of the URI.
and after a '?' character.
@c http://mysite.com/mypath?query
*/
- const wxString GetQuery();
+ const wxString GetQuery() const;
/**
Returns the Scheme component of the URI.
The first part of the uri.
@c scheme://mysite.com
*/
- const wxString GetScheme();
+ const wxString GetScheme() const;
/**
Returns the Server component of the URI.
server component.
@c http://server/mypath
*/
- const wxString GetServer();
+ const wxString GetServer() const;
/**
Returns the username part of the userinfo component of
RFC 1396 and should generally be avoided if possible.
@c http://user:password@mysite.com/mypath
*/
- const wxString GetUser();
+ const wxString GetUser() const;
/**
Returns the UserInfo component of the URI.
that is postfixed by a '@' character.
@c http://userinfo@mysite.com/mypath
*/
- const wxString GetUserInfo();
+ const wxString GetUserInfo() const;
/**
Returns @true if the Fragment component of the URI exists.
*/
- bool HasFragment();
+ bool HasFragment() const;
/**
Returns @true if the Path component of the URI exists.
*/
- bool HasPath();
+ bool HasPath() const;
/**
Returns @true if the Port component of the URI exists.
*/
- bool HasPort();
+ bool HasPort() const;
/**
Returns @true if the Query component of the URI exists.
*/
- bool HasQuery();
+ bool HasQuery() const;
/**
Returns @true if the Scheme component of the URI exists.
*/
- bool HasScheme();
+ bool HasScheme() const;
/**
Returns @true if the Server component of the URI exists.
*/
- bool HasServer();
+ bool HasServer() const;
/**
Returns @true if the User component of the URI exists.
*/
- bool HasUser();
+ bool HasUser() const;
/**
Returns @true if a valid [absolute] URI, otherwise this URI
is a URI reference and not a full URI, and IsReference
returns @false.
*/
- bool IsReference();
+ bool IsReference() const;
/**
To obtain individual components you can use
one of the following methods
GetScheme()
-
+
GetUserInfo()
-
+
GetServer()
-
+
GetPort()
-
+
GetPath()
-
+
GetQuery()
-
+
GetFragment()
However, you should check HasXXX before
calling a get method, which determines whether or not the component referred
to by the method is defined according to RFC 2396.
Consider an undefined component equivalent to a
@NULL C string.
-
+
HasScheme()
-
+
HasUserInfo()
-
+
HasServer()
-
+
@ref hasserver() HasPort
-
+
HasPath()
-
+
HasQuery()
-
+
HasFragment()
Example:
*/
of this URI is not absolute (does not begin with '/'), the path
of the base's is merged with this URI's path, resulting in the URI
"http://mysite.com/john/mydir".
-
+
@param base
Base URI to inherit from. Must be a full URI and not a reference
@param flags
This is the preferred over deprecated wxURL::ConvertFromURI.
If you want to unescape an entire wxURI, use BuildUnescapedURI() instead,
as it performs some optimizations over this method.
-
+
@param uri
string with escaped characters to convert
*/
/**
Compares this URI to another URI, and returns @true if
this URI equals
-
+
@param uricomp, otherwise it returns @false.
-
+
uricomp
URI to compare to
*/
void operator ==(const wxURI& uricomp);
};
+