org.apache.xml.serializer.utils

## Class SystemIDResolver

- java.lang.Object
- - org.apache.xml.serializer.utils.SystemIDResolver

    public final class SystemIDResolver
    extends java.lang.Object

This class is used to resolve relative URIs and SystemID strings into absolute URIs.

This is a generic utility for resolving URIs, other than the fact that it's declared to throw TransformerException. Please see code comments for details on how resolution is performed.

This class is a copy of the one in org.apache.xml.utils. It exists to cut the serializers dependancy on that package. This class is not a public API, it is only public because it is used in org.apache.xml.serializer.

Usage:
  **For internal use only**

### Constructor Summary

Constructors
Constructor and Description
`SystemIDResolver()`

### Method Summary

Methods
`static java.lang.String` `getAbsoluteURI(java.lang.String systemId)` Take a SystemID string and try to turn it into a good absolute URI.
`static java.lang.String` `getAbsoluteURI(java.lang.String urlString, java.lang.String base)` Take a SystemID string and try to turn it into a good absolute URI.
`static java.lang.String` `getAbsoluteURIFromRelative(java.lang.String localPath)` Get an absolute URI from a given relative URI (local path).
`static boolean` `isAbsolutePath(java.lang.String systemId)` Return true if the local path is an absolute path.
`static boolean` `isAbsoluteURI(java.lang.String systemId)` Return true if the systemId denotes an absolute URI .

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### SystemIDResolver

    public SystemIDResolver()

### Method Detail

#### getAbsoluteURIFromRelative

    public static java.lang.String getAbsoluteURIFromRelative(java.lang.String localPath)

Get an absolute URI from a given relative URI (local path).

The relative URI is a local filesystem path. The path can be absolute or relative. If it is a relative path, it is resolved relative to the system property "user.dir" if it is available; if not (i.e. in an Applet perhaps which throws SecurityException) then we just return the relative path. The space and backslash characters are also replaced to generate a good absolute URI.

Parameters:
  `localPath` - The relative URI to resolve
Returns:
  Resolved absolute URI

#### isAbsoluteURI

    public static boolean isAbsoluteURI(java.lang.String systemId)

Return true if the systemId denotes an absolute URI .

Parameters:
  `systemId` - The systemId string
Returns:
  true if the systemId is an an absolute URI

#### isAbsolutePath

    public static boolean isAbsolutePath(java.lang.String systemId)

Return true if the local path is an absolute path.

Parameters:
  `systemId` - The path string
Returns:
  true if the path is absolute

#### getAbsoluteURI

    public static java.lang.String getAbsoluteURI(java.lang.String systemId)

Take a SystemID string and try to turn it into a good absolute URI.

Parameters:
  `systemId` - A URI string, which may be absolute or relative.
Returns:
  The resolved absolute URI

#### getAbsoluteURI

    public static java.lang.String getAbsoluteURI(java.lang.String urlString,
                                  java.lang.String base)
                                           throws TransformerException

Take a SystemID string and try to turn it into a good absolute URI.

Parameters:
  `urlString` - SystemID string
  `base` - The URI string used as the base for resolving the systemID
Returns:
  The resolved absolute URI
Throws:
  `TransformerException` - thrown if the string can't be turned into a URI.