org.eclipse.emf.ecore.xmi
Interface XMLResource.URIHandler

All Known Implementing Classes:
ResourceEntityHandlerImpl, URIHandlerImpl, URIHandlerImpl.PlatformSchemeAware
Enclosing interface:
XMLResource

public static interface XMLResource.URIHandler

An interface for a URI handler that is used to resolve and deresolve URIs. Before being used by either load or save, setBaseURI(URI) will be called with the URI of the resource being loaded or saved. During load, resolve(URI) is called to resolve each URI against the URI of the containing resource; this provides an opportunity to turn relative URIs into absolute URIs. During save, deresolve(URI) is called to resolve each URI against the URI of the containing resource; this provide an opportunity to turn absolute URIs into relative URIs It should be the case that uriHandler.resolve(uriHandler.deresolve(uri)).equals(uri), i.e., resolving the deresolved URI should yield the original URI.

See Also:
URIHandlerImpl

Method Summary
 URI deresolve(URI uri)
          Returns the URI deresolved against the base URI.
 URI resolve(URI uri)
          Returns the URI resolved against the base URI.
 void setBaseURI(URI uri)
          Sets base URI used by the handler.
 

Method Detail

setBaseURI

void setBaseURI(URI uri)
Sets base URI used by the handler. It will be called before load or save begins.

Parameters:
uri - the new base URI.

resolve

URI resolve(URI uri)
Returns the URI resolved against the base URI.

Parameters:
uri - the URI to resolve.
Returns:
the URI resolved against the base URI.
See Also:
URI.resolve(URI)

deresolve

URI deresolve(URI uri)
Returns the URI deresolved against the base URI.

Parameters:
uri - the URI to resolve.
Returns:
the URI resolved against the base URI.
See Also:
URI.deresolve(URI)

Copyright 2001-2006 IBM Corporation and others.
All Rights Reserved.