Class StAXReaderFactory

  • All Implemented Interfaces:
    IXMLReaderFactory

    public class StAXReaderFactory
    extends java.lang.Object
    implements IXMLReaderFactory
    Factory for creating XMLPull parser instances.
    Version:
    1.0
    Author:
    Dennis M. Sosnoski
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private javax.xml.stream.XMLInputFactory m_factory
      Factory used for constructing parser instances.
      private boolean m_isNamespaceEnabled
      Namespace processing state configured on factory.
      private static StAXReaderFactory s_instance
      Singleton instance of class.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private StAXReaderFactory()
      Internal constructor.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      IXMLReader createReader​(java.io.InputStream is, java.lang.String name, java.lang.String enc, boolean nsf)
      Get new XML reader instance for document from input stream.
      IXMLReader createReader​(java.io.Reader rdr, java.lang.String name, boolean nsf)
      Get new XML reader instance for document from reader.
      static StAXReaderFactory getInstance()
      Get instance of factory.
      IXMLReader recycleReader​(IXMLReader old, java.io.InputStream is, java.lang.String name, java.lang.String enc)
      Recycle XML reader instance for new document from input stream.
      IXMLReader recycleReader​(IXMLReader old, java.io.Reader rdr, java.lang.String name)
      Recycle XML reader instance for document from reader.
      private void setNamespacesState​(boolean nsf)
      Create new parser instance.
      • Methods inherited from class java.lang.Object

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

      • s_instance

        private static final StAXReaderFactory s_instance
        Singleton instance of class.
      • m_factory

        private final javax.xml.stream.XMLInputFactory m_factory
        Factory used for constructing parser instances.
      • m_isNamespaceEnabled

        private boolean m_isNamespaceEnabled
        Namespace processing state configured on factory.
    • Constructor Detail

      • StAXReaderFactory

        private StAXReaderFactory()
        Internal constructor.
    • Method Detail

      • getInstance

        public static StAXReaderFactory getInstance()
        Get instance of factory.
        Returns:
        factory instance
      • setNamespacesState

        private void setNamespacesState​(boolean nsf)
                                 throws JiBXException
        Create new parser instance. In order to avoid thread safety issues the caller must have a lock on the factory object.
        Parameters:
        nsf - enable namespace processing on parser flag
        Throws:
        JiBXException - on error creating parser
      • createReader

        public IXMLReader createReader​(java.io.InputStream is,
                                       java.lang.String name,
                                       java.lang.String enc,
                                       boolean nsf)
                                throws JiBXException
        Description copied from interface: IXMLReaderFactory
        Get new XML reader instance for document from input stream.
        Specified by:
        createReader in interface IXMLReaderFactory
        Parameters:
        is - document input stream
        name - document name (null if unknown)
        enc - document character encoding (null if unknown)
        nsf - namespaces enabled flag
        Returns:
        new reader instance for document
        Throws:
        JiBXException - on parser configuration error
      • createReader

        public IXMLReader createReader​(java.io.Reader rdr,
                                       java.lang.String name,
                                       boolean nsf)
                                throws JiBXException
        Description copied from interface: IXMLReaderFactory
        Get new XML reader instance for document from reader.
        Specified by:
        createReader in interface IXMLReaderFactory
        Parameters:
        rdr - document reader
        name - document name (null if unknown)
        nsf - namespaces enabled flag
        Returns:
        new reader instance for document
        Throws:
        JiBXException - on parser configuration error
      • recycleReader

        public IXMLReader recycleReader​(IXMLReader old,
                                        java.io.InputStream is,
                                        java.lang.String name,
                                        java.lang.String enc)
                                 throws JiBXException
        Description copied from interface: IXMLReaderFactory
        Recycle XML reader instance for new document from input stream. If the supplied reader can be reused it will be configured for the new document and returned; otherwise, a new reader will be created for the document. The namespace enabled state of the returned reader is always the same as that of the supplied reader.
        Specified by:
        recycleReader in interface IXMLReaderFactory
        Parameters:
        old - reader instance to be recycled
        is - document input stream
        name - document name (null if unknown)
        enc - document character encoding (null if unknown)
        Returns:
        new reader instance for document
        Throws:
        JiBXException - on parser configuration error
      • recycleReader

        public IXMLReader recycleReader​(IXMLReader old,
                                        java.io.Reader rdr,
                                        java.lang.String name)
                                 throws JiBXException
        Description copied from interface: IXMLReaderFactory
        Recycle XML reader instance for document from reader. If the supplied reader can be reused it will be configured for the new document and returned; otherwise, a new reader will be created for the document. The namespace enabled state of the returned reader is always the same as that of the supplied reader.
        Specified by:
        recycleReader in interface IXMLReaderFactory
        Parameters:
        old - reader instance to be recycled
        rdr - document reader
        name - document name (null if unknown)
        Returns:
        new reader instance for document
        Throws:
        JiBXException - on parser configuration error