org.exolab.castor.net.util

Class URIResolverImpl

Implemented Interfaces:
URIResolver

public final class URIResolverImpl
extends java.lang.Object
implements URIResolver

The default implementation of URIResolver

Version:
$Revision: 1.2 $ $Date: 2003/03/03 09:57:16 $

Authors:
Keith Visco
Arnaud Blandin

Constructor Summary

URIResolverImpl()

Method Summary

URILocation
resolve(String href, String documentBase)
Resolves the given href and documentBase.
URILocation
resolveURN(String urn)
Resolves the given urn.

Constructor Details

URIResolverImpl

public URIResolverImpl()

Method Details

resolve

public URILocation resolve(String href,
                           String documentBase)
            throws URIException
Resolves the given href and documentBase. The href can either be an absolute or a relative URI as defined by IETF RFC 2396:
  • Absolute URI: [scheme]:'//'[authority][absolute path]
  • Relative URI: '//'[authority][absolute path] or [relative path] or [absolute path].

Note:

  1. When [authority] is not used then '//' must not be used.
  2. An [absolute path] begins by a '/' sign.
For instance the following URIs are valid:
        file:/c:/Program Files/MyApp/myresource.xml
        file://usr/etc/myresource.xml
        http://www.castor.org/index.html
        ../relative/index.html
    
However, the following won't be valid:
        file://c:/Program Files/MyApp/myresource.xml
    
Specified by:
resolve in interface URIResolver

Returns:
the URILocation for the URI


resolveURN

public URILocation resolveURN(String urn)
            throws URIException
Resolves the given urn. An implementation of this method may return null if the URN could not be resolved.
Specified by:
resolveURN in interface URIResolver

Returns:
the URILocation for the URN


Intalio Inc. (C) 1999-2003. All rights reserved http://www.intalio.com