Package org.jibx.runtime.impl
Class StAXReaderFactory
- java.lang.Object
-
- org.jibx.runtime.impl.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.XMLInputFactorym_factoryFactory used for constructing parser instances.private booleanm_isNamespaceEnabledNamespace processing state configured on factory.private static StAXReaderFactorys_instanceSingleton instance of class.
-
Constructor Summary
Constructors Modifier Constructor Description privateStAXReaderFactory()Internal constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description IXMLReadercreateReader(java.io.InputStream is, java.lang.String name, java.lang.String enc, boolean nsf)Get new XML reader instance for document from input stream.IXMLReadercreateReader(java.io.Reader rdr, java.lang.String name, boolean nsf)Get new XML reader instance for document from reader.static StAXReaderFactorygetInstance()Get instance of factory.IXMLReaderrecycleReader(IXMLReader old, java.io.InputStream is, java.lang.String name, java.lang.String enc)Recycle XML reader instance for new document from input stream.IXMLReaderrecycleReader(IXMLReader old, java.io.Reader rdr, java.lang.String name)Recycle XML reader instance for document from reader.private voidsetNamespacesState(boolean nsf)Create new parser instance.
-
-
-
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.
-
-
Method Detail
-
getInstance
public static StAXReaderFactory getInstance()
Get instance of factory.- Returns:
- factory instance
-
setNamespacesState
private void setNamespacesState(boolean nsf) throws JiBXExceptionCreate 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:IXMLReaderFactoryGet new XML reader instance for document from input stream.- Specified by:
createReaderin interfaceIXMLReaderFactory- Parameters:
is- document input streamname- document name (nullif unknown)enc- document character encoding (nullif 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:IXMLReaderFactoryGet new XML reader instance for document from reader.- Specified by:
createReaderin interfaceIXMLReaderFactory- Parameters:
rdr- document readername- document name (nullif 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:IXMLReaderFactoryRecycle 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:
recycleReaderin interfaceIXMLReaderFactory- Parameters:
old- reader instance to be recycledis- document input streamname- document name (nullif unknown)enc- document character encoding (nullif 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:IXMLReaderFactoryRecycle 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:
recycleReaderin interfaceIXMLReaderFactory- Parameters:
old- reader instance to be recycledrdr- document readername- document name (nullif unknown)- Returns:
- new reader instance for document
- Throws:
JiBXException- on parser configuration error
-
-