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!