Class SystemIDResolver

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

public final class SystemIDResolver extends 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.
  • Constructor Details

    • SystemIDResolver

      public SystemIDResolver()
  • Method Details

    • getAbsoluteURIFromRelative

      public static String getAbsoluteURIFromRelative(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(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(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 String getAbsoluteURI(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 String getAbsoluteURI(String urlString, 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.