Package org.dom4j.io

Class XPP3Reader

java.lang.Object
org.dom4j.io.XPP3Reader

public class XPP3Reader extends Object

XPP3Reader is a Reader of DOM4J documents that uses the fast XML Pull Parser 3.x . It is very fast for use in SOAP style environments.

Version:
$Revision: 1.3 $
Author:
Pelle Braendgaard , James Strachan
  • Constructor Details

    • XPP3Reader

      public XPP3Reader()
    • XPP3Reader

      public XPP3Reader(DocumentFactory factory)
  • Method Details

    • read

      public Document read(File file) throws DocumentException, IOException, org.xmlpull.v1.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.xmlpull.v1.XmlPullParserException - DOCUMENT ME!
    • read

      public Document read(URL url) throws DocumentException, IOException, org.xmlpull.v1.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.xmlpull.v1.XmlPullParserException - DOCUMENT ME!
    • read

      public Document read(String systemID) throws DocumentException, IOException, org.xmlpull.v1.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.xmlpull.v1.XmlPullParserException - DOCUMENT ME!
    • read

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

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

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

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

      public Document read(Reader reader, String systemID) throws DocumentException, IOException, org.xmlpull.v1.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.xmlpull.v1.XmlPullParserException - DOCUMENT ME!
    • getXPPParser

      public org.xmlpull.v1.XmlPullParser getXPPParser() throws org.xmlpull.v1.XmlPullParserException
      Throws:
      org.xmlpull.v1.XmlPullParserException
    • getXPPFactory

      public org.xmlpull.v1.XmlPullParserFactory getXPPFactory() throws org.xmlpull.v1.XmlPullParserException
      Throws:
      org.xmlpull.v1.XmlPullParserException
    • setXPPFactory

      public void setXPPFactory(org.xmlpull.v1.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.
    • parseDocument

      protected Document parseDocument() throws DocumentException, IOException, org.xmlpull.v1.XmlPullParserException
      Throws:
      DocumentException
      IOException
      org.xmlpull.v1.XmlPullParserException
    • 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!