org.exolab.castor.mapping
Class Mapping
java.lang.Object
org.exolab.castor.mapping.Mapping
public final class Mapping
extends java.lang.Object
Utility class for loading mapping files and providing them to the
XML marshaller, JDO engine etc. The mapping file can be loaded from
a URL, input stream or SAX
InputSource.
Multiple mapping files can be loaded with the same
Mapping
object. When loading master mapping files that include other mapping
files it might be convenient to use
setBaseURL(String)
or
setEntityResolver(EntityResolver)
.
If the desired class loader is different than the one used by Castor
(e.g. if Castor is installed as a Java extension), the
Mapping
object can be constructed with the proper class loader.
The following example loads two mapping files:
Mapping mapping;
mapping = new Mapping( getClass().getClassLoader() );
mapping.loadMapping( "mapping.xml" );
mapping.loadMapping( url );
$Revision: 6907 $ $Date: 2006-04-25 16:09:10 -0600 (Tue, 25 Apr 2006) $Mapping() - Constructs a new mapping.
|
Mapping(ClassLoader loader) - Constructs a new mapping.
|
ClassLoader | getClassLoader() - Returns the class loader used by this mapping object.
|
List | getMappingSources() - Get list of mapping sources to resolve.
|
MappingRoot | getRoot() - Get the loaded mapping.
|
void | loadMapping(InputSource source) - Loads the mapping from the specified input source with type defaults to
'CastorXmlMapping'.
|
void | loadMapping(InputSource source, String type) - Loads the mapping from the specified input source.
|
void | loadMapping(String url) - Loads the mapping from the specified URL with type defaults to
'CastorXmlMapping'.
|
void | loadMapping(String url, String type) - Loads the mapping from the specified URL.
|
void | loadMapping(URL url) - Loads the mapping from the specified URL with type defaults to
'CastorXmlMapping'.
|
void | loadMapping(URL url, String type) - Loads the mapping from the specified URL.
|
void | markAsProcessed(Object id) - Marks the given mapping as having been processed.
|
boolean | processed(Object id) - Returns true if the given systemID or stream has been marked as processed.
|
void | setBaseURL(String url) - Sets the base URL for the mapping and related files.
|
void | setEntityResolver(EntityResolver resolver) - Sets the entity resolver.
|
Mapping
public Mapping()
Constructs a new mapping.
Mapping
public Mapping(ClassLoader loader)
Constructs a new mapping.
loader
- The class loader to use, null for the default
getClassLoader
public ClassLoader getClassLoader()
Returns the class loader used by this mapping object. The returned
class loaded may be the one passed in the constructor, the one used
to load Castor, or in some 1.1 JVMs null.
- The class loader used by this mapping object (may be null)
getMappingSources
public List getMappingSources()
throws MappingException
Get list of mapping sources to resolve.
- List of mapping sources to resolve.
getRoot
public MappingRoot getRoot()
Get the loaded mapping.
loadMapping
public void loadMapping(InputSource source)
Loads the mapping from the specified input source with type defaults to
'CastorXmlMapping'.
source
- The input source.
loadMapping
public void loadMapping(InputSource source,
String type)
Loads the mapping from the specified input source.
source
- The input source.type
- The source type.
loadMapping
public void loadMapping(String url)
throws IOException,
MappingException
Loads the mapping from the specified URL with type defaults to
'CastorXmlMapping'. If an entity resolver was specified, will use
the entity resolver to resolve the URL. This method is also used
to load mappings referenced from another mapping or configuration
file.
url
- The URL of the mapping file.
loadMapping
public void loadMapping(String url,
String type)
throws IOException,
MappingException
Loads the mapping from the specified URL. If an entity resolver
was specified, will use the entity resolver to resolve the URL.
This method is also used to load mappings referenced from another
mapping or configuration file.
url
- The URL of the mapping file.type
- The source type.
loadMapping
public void loadMapping(URL url)
throws IOException,
MappingException
Loads the mapping from the specified URL with type defaults to
'CastorXmlMapping'.
url
- The URL of the mapping file.
loadMapping
public void loadMapping(URL url,
String type)
throws IOException,
MappingException
Loads the mapping from the specified URL.
url
- The URL of the mapping file.type
- The source type.
markAsProcessed
public void markAsProcessed(Object id)
Marks the given mapping as having been processed.
id
- systemID or stream to identify the mapping to mark.
processed
public boolean processed(Object id)
Returns true if the given systemID or stream has been marked as processed.
id
- systemID or stream to check for being marked as processed.
- true if the given systemID or stream has been marked as processed.
setBaseURL
public void setBaseURL(String url)
Sets the base URL for the mapping and related files. If the base
URL is known, files can be included using relative names. Any URL
can be passed, if the URL can serve as a base URL it will be used.
If url is an absolute path, it is converted to a file URL.
setEntityResolver
public void setEntityResolver(EntityResolver resolver)
Sets the entity resolver. The entity resolver can be used to
resolve external entities and cached documents that are used
from within mapping files.
resolver
- The entity resolver to use
Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com