org.objectweb.easybeans.util.xml
Class SchemaEntityResolver

java.lang.Object
  extended by org.objectweb.easybeans.util.xml.SchemaEntityResolver
All Implemented Interfaces:
org.xml.sax.EntityResolver
Direct Known Subclasses:
EJB3EntityResolver, PersistenceUnitEntityResolver

public class SchemaEntityResolver
extends java.lang.Object
implements org.xml.sax.EntityResolver

Entity resolver allowing to find schema within the classloader.

Author:
Florent Benoit

Field Summary
private  java.util.Map<java.lang.String,java.lang.String> schemasUrls
          Map where the schemas URLs are stored.
 
Constructor Summary
SchemaEntityResolver(java.lang.String[] schemas)
          Constructor.
 
Method Summary
 org.xml.sax.InputSource resolveEntity(java.lang.String publicId, java.lang.String systemId)
          The Parser will call this method before opening any external entity except the top-level document entity.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

schemasUrls

private java.util.Map<java.lang.String,java.lang.String> schemasUrls
Map where the schemas URLs are stored.

Constructor Detail

SchemaEntityResolver

public SchemaEntityResolver(java.lang.String[] schemas)
Constructor. Finds the XSD with classloader.

Parameters:
schemas - the name of the schemas to resolve.
Method Detail

resolveEntity

public org.xml.sax.InputSource resolveEntity(java.lang.String publicId,
                                             java.lang.String systemId)
                                      throws java.io.IOException,
                                             org.xml.sax.SAXException
The Parser will call this method before opening any external entity except the top-level document entity.

Specified by:
resolveEntity in interface org.xml.sax.EntityResolver
Parameters:
publicId - The public identifier of the external entity being referenced, or null if none was supplied.
systemId - The system identifier of the external entity being referenced.
Returns:
An InputSource object describing the new input source, or null to request that the parser open a regular URI connection to the system identifier.
Throws:
org.xml.sax.SAXException - Any SAX exception, possibly wrapping another exception.
java.io.IOException - A Java-specific IO exception, possibly the result of creating a new InputStream or Reader for the InputSource.