com.sapportals.wcm.util.uri

Class UriReference

java.lang.Object
  extended by com.sapportals.wcm.util.uri.UriReference
All Implemented Interfaces:
IUriReference

public class UriReference
extends Object
implements IUriReference

A RFC2396 reference implementation.

Copyright (c) SAP AG 2001-2005


Constructor Summary
UriReference(IUriReference reference, String fragmentIdentifier)
           
UriReference(IUri uri, String fragmentIdentifier)
          Construct new absolute uri reference.
UriReference(String path, String query, String fragment)
          Construct new relative uri reference without authority and scheme.
UriReference(String authority, String path, String query, String fragment)
          Construct new relative uri reference without scheme.
UriReference(String scheme, String authority, String path, String query, String fragment)
          Construct new relative uri reference with scheme.
 
Method Summary
 IUriReference appendPath(String path)
          Create a new uri reference by appending the given path to any existing path in the uri reference.
 boolean equals(IUriReference other)
           
 boolean equals(Object other)
           
 boolean equals(UriReference other)
           
 String getAuthority()
          Get the authority of the reference
 String getFragmentIdentifier()
          Get the fragment identifier (without '#') of the uri
 String getPath()
          Get the path of the reference
 String getQuery()
          Get the query of the reference
 String getScheme()
          Get the scheme of the reference
 IUri getUri()
          Get the uri if the reference is absolute
 int hashCode()
           
 boolean isAbsolute()
          Determine if the reference is absolute
 IUriReference resolveWith(IUri base)
          With base Uri, resolve this reference to an absolute reference.
 IUriReference setQuery(String query)
          Gets a new URI reference resulting from setting the query of this URI reference to the given query.
 String toExternalForm()
          Returns a string representation according to RFC 2396 of this uri reference.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

UriReference

public UriReference(IUri uri,
                    String fragmentIdentifier)
Construct new absolute uri reference.

Parameters:
uri - the absolute uri
fragmentIdentifier - the fragment of the uri reference

UriReference

public UriReference(String path,
                    String query,
                    String fragment)
Construct new relative uri reference without authority and scheme.

Parameters:
path - the path of the reference or empty
fragment - used in reference or null

UriReference

public UriReference(String authority,
                    String path,
                    String query,
                    String fragment)
Construct new relative uri reference without scheme.

Parameters:
authority - of the relative uri reference
path - the path of the reference or empty
fragment - used in reference or null

UriReference

public UriReference(String scheme,
                    String authority,
                    String path,
                    String query,
                    String fragment)
             throws IllegalArgumentException
Construct new relative uri reference with scheme. This constructor is used for a degenerate case as described in RFC 2396, page 32. The construction of relative uri references with scheme is discouraged. Note that either scheme or authority must be null.

Parameters:
scheme - of the relative uri reference
authority - of the relative uri reference
path - the path of the reference or empty
fragment - used in reference or null
Throws:
IllegalArgumentException - if both scheme and authority are not null

UriReference

public UriReference(IUriReference reference,
                    String fragmentIdentifier)
Method Detail

appendPath

public IUriReference appendPath(String path)
Description copied from interface: IUriReference
Create a new uri reference by appending the given path to any existing path in the uri reference. The path must be uri encoded or the created reference will not be valid. The given path is appended by prefixing a slash character, if necessary.

Specified by:
appendPath in interface IUriReference
Parameters:
path - uri encoded path to be appended
Returns:
an uri reference with path appended

setQuery

public IUriReference setQuery(String query)
Description copied from interface: IUriReference
Gets a new URI reference resulting from setting the query of this URI reference to the given query. The query string must be in RFC 2396 encoded form. See UriQuery for manipulation of query strings.

Specified by:
setQuery in interface IUriReference
Parameters:
query - the encoded query string to be set (may be null )
Returns:
an uri reference with query set to given query

equals

public boolean equals(Object other)
Overrides:
equals in class Object

equals

public boolean equals(IUriReference other)

equals

public boolean equals(UriReference other)

hashCode

public int hashCode()
Overrides:
hashCode in class Object

toExternalForm

public String toExternalForm()
Description copied from interface: IUriReference
Returns a string representation according to RFC 2396 of this uri reference.

Specified by:
toExternalForm in interface IUriReference
Returns:
string in uri reference format

toString

public String toString()
Overrides:
toString in class Object

getFragmentIdentifier

public String getFragmentIdentifier()
Get the fragment identifier (without '#') of the uri

Specified by:
getFragmentIdentifier in interface IUriReference
Returns:
fragment identifier or emtpy String

getScheme

public String getScheme()
Get the scheme of the reference

Specified by:
getScheme in interface IUriReference
Returns:
scheme of reference or null

getAuthority

public String getAuthority()
Get the authority of the reference

Specified by:
getAuthority in interface IUriReference
Returns:
authority of reference or null

getPath

public String getPath()
Get the path of the reference

Specified by:
getPath in interface IUriReference
Returns:
path of reference or empty string

getQuery

public String getQuery()
Get the query of the reference

Specified by:
getQuery in interface IUriReference
Returns:
query of reference or null

getUri

public IUri getUri()
Get the uri if the reference is absolute

Specified by:
getUri in interface IUriReference
Returns:
uri of reference or null

isAbsolute

public boolean isAbsolute()
Determine if the reference is absolute

Specified by:
isAbsolute in interface IUriReference
Returns:
if reference is absolute

resolveWith

public IUriReference resolveWith(IUri base)
                          throws IllegalArgumentException
With base Uri, resolve this reference to an absolute reference. If this reference is already absolute, this is the identity operation.

Specified by:
resolveWith in interface IUriReference
Parameters:
base - uri to resolve this reference with
Returns:
absolute uri reference
Throws:
IllegalArgumentException
Access Rights

This class can be accessed from:


SC DC Public Part ACH
[sap.com] KMC-CM [sap.com] tc/km/frwk api EP-KM-CM
[sap.com] KMC-WPC [sap.com] tc/kmc/wpc/wpcfacade api EP-PIN-WPC-WCM


Copyright 2014 SAP AG Complete Copyright Notice