Class ConfigurationReader

  • All Implemented Interfaces:
    NamespaceResolver, org.xml.sax.ContentHandler
    Direct Known Subclasses:
    ConfigurationReaderPE

    public class ConfigurationReader
    extends java.lang.Object
    implements org.xml.sax.ContentHandler, NamespaceResolver
    Class used to read a config.xml file and transfer all settings from the file to the Configuration
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void characters​(char[] ch, int start, int length)  
      void endDocument()  
      void endElement​(java.lang.String uri, java.lang.String localName, java.lang.String qName)  
      void endPrefixMapping​(java.lang.String prefix)  
      protected void error​(XPathException err)  
      protected void errorClass​(java.lang.String element, java.lang.String attribute, java.lang.String actual, java.lang.Class required, java.lang.Exception cause)  
      java.lang.String getURIForPrefix​(java.lang.String prefix, boolean useDefault)
      Get the namespace URI corresponding to a given prefix.
      void ignorableWhitespace​(char[] ch, int start, int length)  
      java.util.Iterator<java.lang.String> iteratePrefixes()
      Get an iterator over all the prefixes declared in this namespace context.
      Configuration makeConfiguration​(javax.xml.transform.Source source)
      Create a Configuration based on the contents of this configuration file
      void processingInstruction​(java.lang.String target, java.lang.String data)  
      protected void readExtensionElement​(org.xml.sax.Attributes atts)
      Process details of XSLT extension elements.
      protected void readWithParam​(org.xml.sax.Attributes atts)  
      protected void readXsltPackage​(org.xml.sax.Attributes atts)  
      void setBaseConfiguration​(Configuration base)
      Set a base Configuration to be used by the new Configuration.
      void setClassLoader​(java.lang.ClassLoader classLoader)
      Set the ClassLoader to be used for dynamic loading of the configuration, and for dynamic loading of other classes used within the configuration.
      void setDocumentLocator​(org.xml.sax.Locator locator)  
      void skippedEntity​(java.lang.String name)  
      void startDocument()  
      void startElement​(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts)  
      void startPrefixMapping​(java.lang.String prefix, java.lang.String uri)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ConfigurationReader

        public ConfigurationReader()
    • Method Detail

      • setClassLoader

        public void setClassLoader​(java.lang.ClassLoader classLoader)
        Set the ClassLoader to be used for dynamic loading of the configuration, and for dynamic loading of other classes used within the configuration. By default the class loader of this class is used.
        Parameters:
        classLoader - the ClassLoader to be used
      • setBaseConfiguration

        public void setBaseConfiguration​(Configuration base)
        Set a base Configuration to be used by the new Configuration. The new Configuration shares a NamePool and document number allocator with the base Configuration
        Parameters:
        base - the base configuration to be used
      • makeConfiguration

        public Configuration makeConfiguration​(javax.xml.transform.Source source)
                                        throws XPathException
        Create a Configuration based on the contents of this configuration file
        Parameters:
        source - the Source of the configuration file
        Returns:
        the constructed Configuration
        Throws:
        XPathException - if a failure occurs, typically an invalid configuration file
      • setDocumentLocator

        public void setDocumentLocator​(org.xml.sax.Locator locator)
        Specified by:
        setDocumentLocator in interface org.xml.sax.ContentHandler
      • startDocument

        public void startDocument()
        Specified by:
        startDocument in interface org.xml.sax.ContentHandler
      • endDocument

        public void endDocument()
        Specified by:
        endDocument in interface org.xml.sax.ContentHandler
      • startPrefixMapping

        public void startPrefixMapping​(java.lang.String prefix,
                                       java.lang.String uri)
        Specified by:
        startPrefixMapping in interface org.xml.sax.ContentHandler
      • endPrefixMapping

        public void endPrefixMapping​(java.lang.String prefix)
        Specified by:
        endPrefixMapping in interface org.xml.sax.ContentHandler
      • startElement

        public void startElement​(java.lang.String uri,
                                 java.lang.String localName,
                                 java.lang.String qName,
                                 org.xml.sax.Attributes atts)
        Specified by:
        startElement in interface org.xml.sax.ContentHandler
      • readExtensionElement

        protected void readExtensionElement​(org.xml.sax.Attributes atts)
        Process details of XSLT extension elements. Overridden in Saxon-PE configuration reader
        Parameters:
        atts - the attributes of the extensionElement element in the configuration file
      • readXsltPackage

        protected void readXsltPackage​(org.xml.sax.Attributes atts)
      • readWithParam

        protected void readWithParam​(org.xml.sax.Attributes atts)
      • errorClass

        protected void errorClass​(java.lang.String element,
                                  java.lang.String attribute,
                                  java.lang.String actual,
                                  java.lang.Class required,
                                  java.lang.Exception cause)
      • endElement

        public void endElement​(java.lang.String uri,
                               java.lang.String localName,
                               java.lang.String qName)
        Specified by:
        endElement in interface org.xml.sax.ContentHandler
      • characters

        public void characters​(char[] ch,
                               int start,
                               int length)
        Specified by:
        characters in interface org.xml.sax.ContentHandler
      • ignorableWhitespace

        public void ignorableWhitespace​(char[] ch,
                                        int start,
                                        int length)
        Specified by:
        ignorableWhitespace in interface org.xml.sax.ContentHandler
      • processingInstruction

        public void processingInstruction​(java.lang.String target,
                                          java.lang.String data)
        Specified by:
        processingInstruction in interface org.xml.sax.ContentHandler
      • skippedEntity

        public void skippedEntity​(java.lang.String name)
        Specified by:
        skippedEntity in interface org.xml.sax.ContentHandler
      • getURIForPrefix

        public java.lang.String getURIForPrefix​(java.lang.String prefix,
                                                boolean useDefault)
        Get the namespace URI corresponding to a given prefix. Return null if the prefix is not in scope.
        Specified by:
        getURIForPrefix in interface NamespaceResolver
        Parameters:
        prefix - the namespace prefix. May be the zero-length string, indicating that there is no prefix. This indicates either the default namespace or the null namespace, depending on the value of useDefault.
        useDefault - true if the default namespace is to be used when the prefix is "". If false, the method returns "" when the prefix is "".
        Returns:
        the uri for the namespace, or null if the prefix is not in scope. The "null namespace" is represented by the pseudo-URI "".
      • iteratePrefixes

        public java.util.Iterator<java.lang.String> iteratePrefixes()
        Get an iterator over all the prefixes declared in this namespace context. This will include the default namespace (prefix="") and the XML namespace where appropriate
        Specified by:
        iteratePrefixes in interface NamespaceResolver
        Returns:
        an iterator over all the prefixes for which a namespace binding exists, including the zero-length string to represent the null/absent prefix if it is bound