Package org.dom4j.io

Class XPPReader


  • public class XPPReader
    extends Object

    XPPReader is a Reader of DOM4J documents that uses the fast XML Pull Parser 2.x . It does not currently support comments, CDATA or ProcessingInstructions or validation but it is very fast for use in SOAP style environments.

    • Constructor Detail

      • XPPReader

        public XPPReader()
    • Method Detail

      • read

        public Document read​(File file)
                      throws DocumentException,
                             IOException,
                             org.gjt.xpp.XmlPullParserException

        Reads a Document from the given File

        Parameters:
        file - is the File to read from.
        Returns:
        the newly created Document instance
        Throws:
        DocumentException - if an error occurs during parsing.
        IOException - if a URL could not be made for the given File
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read​(URL url)
                      throws DocumentException,
                             IOException,
                             org.gjt.xpp.XmlPullParserException

        Reads a Document from the given URL

        Parameters:
        url - URL to read from.
        Returns:
        the newly created Document instance
        Throws:
        DocumentException - if an error occurs during parsing.
        IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read​(String systemID)
                      throws DocumentException,
                             IOException,
                             org.gjt.xpp.XmlPullParserException

        Reads a Document from the given URL or filename.

        If the systemID contains a ':' character then it is assumed to be a URL otherwise its assumed to be a file name. If you want finer grained control over this mechansim then please explicitly pass in either a URLor a Fileinstance instead of a String to denote the source of the document.

        Parameters:
        systemID - is a URL for a document or a file name.
        Returns:
        the newly created Document instance
        Throws:
        DocumentException - if an error occurs during parsing.
        IOException - if a URL could not be made for the given File
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read​(InputStream in)
                      throws DocumentException,
                             IOException,
                             org.gjt.xpp.XmlPullParserException

        Reads a Document from the given stream

        Parameters:
        in - InputStream to read from.
        Returns:
        the newly created Document instance
        Throws:
        DocumentException - if an error occurs during parsing.
        IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read​(Reader reader)
                      throws DocumentException,
                             IOException,
                             org.gjt.xpp.XmlPullParserException

        Reads a Document from the given Reader

        Parameters:
        reader - is the reader for the input
        Returns:
        the newly created Document instance
        Throws:
        DocumentException - if an error occurs during parsing.
        IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read​(char[] text)
                      throws DocumentException,
                             IOException,
                             org.gjt.xpp.XmlPullParserException

        Reads a Document from the given array of characters

        Parameters:
        text - is the text to parse
        Returns:
        the newly created Document instance
        Throws:
        DocumentException - if an error occurs during parsing.
        IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read​(InputStream in,
                             String systemID)
                      throws DocumentException,
                             IOException,
                             org.gjt.xpp.XmlPullParserException

        Reads a Document from the given stream

        Parameters:
        in - InputStream to read from.
        systemID - is the URI for the input
        Returns:
        the newly created Document instance
        Throws:
        DocumentException - if an error occurs during parsing.
        IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read​(Reader reader,
                             String systemID)
                      throws DocumentException,
                             IOException,
                             org.gjt.xpp.XmlPullParserException

        Reads a Document from the given Reader

        Parameters:
        reader - is the reader for the input
        systemID - is the URI for the input
        Returns:
        the newly created Document instance
        Throws:
        DocumentException - if an error occurs during parsing.
        IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • getXPPParser

        public org.gjt.xpp.XmlPullParser getXPPParser()
                                               throws org.gjt.xpp.XmlPullParserException
        Throws:
        org.gjt.xpp.XmlPullParserException
      • getXPPFactory

        public org.gjt.xpp.XmlPullParserFactory getXPPFactory()
                                                       throws org.gjt.xpp.XmlPullParserException
        Throws:
        org.gjt.xpp.XmlPullParserException
      • setXPPFactory

        public void setXPPFactory​(org.gjt.xpp.XmlPullParserFactory xPPFactory)
      • getDocumentFactory

        public DocumentFactory getDocumentFactory()
        DOCUMENT ME!
        Returns:
        the DocumentFactory used to create document objects
      • setDocumentFactory

        public void setDocumentFactory​(DocumentFactory documentFactory)

        This sets the DocumentFactory used to create new documents. This method allows the building of custom DOM4J tree objects to be implemented easily using a custom derivation of DocumentFactory

        Parameters:
        documentFactory - DocumentFactory used to create DOM4J objects
      • addHandler

        public void addHandler​(String path,
                               ElementHandler handler)
        Adds the ElementHandler to be called when the specified path is encounted.
        Parameters:
        path - is the path to be handled
        handler - is the ElementHandler to be called by the event based processor.
      • removeHandler

        public void removeHandler​(String path)
        Removes the ElementHandler from the event based processor, for the specified path.
        Parameters:
        path - is the path to remove the ElementHandler for.
      • setDefaultHandler

        public void setDefaultHandler​(ElementHandler handler)
        When multiple ElementHandler instances have been registered, this will set a default ElementHandler to be called for any path which does NOT have a handler registered.
        Parameters:
        handler - is the ElementHandler to be called by the event based processor.
      • getDispatchHandler

        protected org.dom4j.io.DispatchHandler getDispatchHandler()
      • setDispatchHandler

        protected void setDispatchHandler​(org.dom4j.io.DispatchHandler dispatchHandler)
      • createReader

        protected Reader createReader​(InputStream in)
                               throws IOException
        Factory method to create a Reader from the given InputStream.
        Parameters:
        in - DOCUMENT ME!
        Returns:
        DOCUMENT ME!
        Throws:
        IOException - DOCUMENT ME!