FileDocCategorySizeDatePackage
XSLoaderImpl.javaAPI DocApache Xerces 3.0.112875Fri Sep 14 20:33:52 BST 2007org.apache.xerces.impl.xs

XSLoaderImpl

public final class XSLoaderImpl extends Object implements org.apache.xerces.xs.XSLoader, DOMConfiguration

An implementation of XSLoader which wraps XMLSchemaLoader.

xerces.internal
author
Michael Glavassevich, IBM
version
$Id: XSLoaderImpl.java 449487 2006-09-24 21:11:28Z mrglavas $

Fields Summary
private final org.apache.xerces.impl.xs.util.XSGrammarPool
fGrammarPool
Grammar pool. Need this to prevent us from getting two grammars from the same namespace.
private final org.apache.xerces.impl.xs.XMLSchemaLoader
fSchemaLoader
Schema loader.
Constructors Summary
public XSLoaderImpl()
No-args constructor.

    
           
      
        fSchemaLoader.setProperty(XMLSchemaLoader.XMLGRAMMAR_POOL, fGrammarPool);
    
Methods Summary
public booleancanSetParameter(java.lang.String name, java.lang.Object value)

        return fSchemaLoader.canSetParameter(name, value);
    
public org.w3c.dom.DOMConfigurationgetConfig()
The configuration of a document. It maintains a table of recognized parameters. Using the configuration, it is possible to change the behavior of the load methods. The configuration may support the setting of and the retrieval of the following non-boolean parameters defined on the DOMConfiguration interface: error-handler (DOMErrorHandler) and resource-resolver (LSResourceResolver).
The following list of boolean parameters is defined:
"validate"
true
[required] (default) Validate an XML Schema during loading. If validation errors are found, the error handler is notified.
false
[optional] Do not report errors during the loading of an XML Schema document.

        return this;
    
public java.lang.ObjectgetParameter(java.lang.String name)

        return fSchemaLoader.getParameter(name);
    
public org.w3c.dom.DOMStringListgetParameterNames()

        return fSchemaLoader.getParameterNames();
    
public org.apache.xerces.xs.XSModelload(org.w3c.dom.ls.LSInput is)
Parse an XML Schema document from a resource identified by a LSInput .

param
is The LSInput from which the source document is to be read.
return
An XSModel representing this schema.

        try {
            fGrammarPool.clear();
            return ((XSGrammar) fSchemaLoader.loadGrammar(fSchemaLoader.dom2xmlInputSource(is))).toXSModel();
        } 
        catch (Exception e) {
            fSchemaLoader.reportDOMFatalError(e);
            return null;
        }
    
public org.apache.xerces.xs.XSModelloadInputList(org.apache.xerces.xs.LSInputList is)
Parses the content of XML Schema documents specified as a list of LSInputs.

param
is The list of LSInputs from which the XML Schema documents are to be read.
return
An XSModel representing the schema documents.

        final int length = is.getLength();
        if (length == 0) {
            return null;
        }
        try {
            fGrammarPool.clear();
            for (int i = 0; i < length; ++i) {
                fSchemaLoader.loadGrammar(fSchemaLoader.dom2xmlInputSource(is.item(i)));
            }
            return fGrammarPool.toXSModel();
        } 
        catch (Exception e) {
            fSchemaLoader.reportDOMFatalError(e);
            return null;
        }
    
public org.apache.xerces.xs.XSModelloadURI(java.lang.String uri)
Parse an XML Schema document from a location identified by a URI reference. If the URI contains a fragment identifier, the behavior is not defined by this specification.

param
uri The location of the XML Schema document to be read.
return
An XSModel representing this schema.

        try {
            fGrammarPool.clear();
            return ((XSGrammar) fSchemaLoader.loadGrammar(new XMLInputSource(null, uri, null))).toXSModel();
        }
        catch (Exception e){
            fSchemaLoader.reportDOMFatalError(e);
            return null;
        }
    
public org.apache.xerces.xs.XSModelloadURIList(org.apache.xerces.xs.StringList uriList)
Parses the content of XML Schema documents specified as the list of URI references. If the URI contains a fragment identifier, the behavior is not defined by this specification.

param
uriList The list of URI locations.
return
An XSModel representing the schema documents.

        int length = uriList.getLength();
        if (length == 0) {
            return null;
        }
        try {
            fGrammarPool.clear();
            for (int i = 0; i < length; ++i) {
                fSchemaLoader.loadGrammar(new XMLInputSource(null, uriList.item(i), null));
            }
            return fGrammarPool.toXSModel();
        } 
        catch (Exception e) {
            fSchemaLoader.reportDOMFatalError(e);
            return null;
        }
    
public voidsetParameter(java.lang.String name, java.lang.Object value)

        fSchemaLoader.setParameter(name, value);