Package org.dom4j.io

Class XPPReader


  • public class XPPReader
    extends java.lang.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.

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addHandler(java.lang.String path, ElementHandler handler)
      Adds the ElementHandler to be called when the specified path is encounted.
      protected java.io.Reader createReader(java.io.InputStream in)
      Factory method to create a Reader from the given InputStream.
      protected org.dom4j.io.DispatchHandler getDispatchHandler()  
      DocumentFactory getDocumentFactory()
      DOCUMENT ME!
      org.gjt.xpp.XmlPullParserFactory getXPPFactory()  
      org.gjt.xpp.XmlPullParser getXPPParser()  
      protected Document parseDocument()  
      Document read(char[] text)
      Reads a Document from the given array of characters
      Document read(java.io.File file)
      Reads a Document from the given File
      Document read(java.io.InputStream in)
      Reads a Document from the given stream
      Document read(java.io.InputStream in, java.lang.String systemID)
      Reads a Document from the given stream
      Document read(java.io.Reader reader)
      Reads a Document from the given Reader
      Document read(java.io.Reader reader, java.lang.String systemID)
      Reads a Document from the given Reader
      Document read(java.lang.String systemID)
      Reads a Document from the given URL or filename.
      Document read(java.net.URL url)
      Reads a Document from the given URL
      void removeHandler(java.lang.String path)
      Removes the ElementHandler from the event based processor, for the specified path.
      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.
      protected void setDispatchHandler(org.dom4j.io.DispatchHandler dispatchHandler)  
      void setDocumentFactory(DocumentFactory documentFactory)
      This sets the DocumentFactory used to create new documents.
      void setXPPFactory(org.gjt.xpp.XmlPullParserFactory xPPFactory)  
      • Methods inherited from class java.lang.Object

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

      • XPPReader

        public XPPReader()
    • Method Detail

      • read

        public Document read(java.io.File file)
                      throws DocumentException,
                             java.io.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.
        java.io.IOException - if a URL could not be made for the given File
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read(java.net.URL url)
                      throws DocumentException,
                             java.io.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.
        java.io.IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read(java.lang.String systemID)
                      throws DocumentException,
                             java.io.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.
        java.io.IOException - if a URL could not be made for the given File
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read(java.io.InputStream in)
                      throws DocumentException,
                             java.io.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.
        java.io.IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read(java.io.Reader reader)
                      throws DocumentException,
                             java.io.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.
        java.io.IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read(char[] text)
                      throws DocumentException,
                             java.io.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.
        java.io.IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read(java.io.InputStream in,
                             java.lang.String systemID)
                      throws DocumentException,
                             java.io.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.
        java.io.IOException - DOCUMENT ME!
        org.gjt.xpp.XmlPullParserException - DOCUMENT ME!
      • read

        public Document read(java.io.Reader reader,
                             java.lang.String systemID)
                      throws DocumentException,
                             java.io.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.
        java.io.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(java.lang.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(java.lang.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.
      • parseDocument

        protected Document parseDocument()
                                  throws DocumentException,
                                         java.io.IOException,
                                         org.gjt.xpp.XmlPullParserException
        Throws:
        DocumentException
        java.io.IOException
        org.gjt.xpp.XmlPullParserException
      • getDispatchHandler

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

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

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