org.xmlpull.v1.builder
Class XmlInfosetBuilder

java.lang.Object
  extended by org.xmlpull.v1.builder.XmlInfosetBuilder
Direct Known Subclasses:
XmlInfosetBuilderImpl

public abstract class XmlInfosetBuilder
extends java.lang.Object

By default builder is using non-validating pull parser with next() method without namespaces to build tree consisting only of XmlDocument, XmlElemenet and String nodes. Additional options are available to change builder behaviour and to generate any deseired subset of XML Information Set


Field Summary
protected  XmlPullParserFactory factory
           
 
Constructor Summary
XmlInfosetBuilder()
           
 
Method Summary
 XmlPullParserFactory getFactory()
          Method get XmlPull factory that is ued by this builder.
 XmlDocument newDocument()
          Create a new document.
abstract  XmlDocument newDocument(java.lang.String version, java.lang.Boolean standalone, java.lang.String characterEncoding)
          Create a new document with given XML prolog.
abstract  XmlElement newFragment(java.lang.String elementName)
          Create XML fragment that is not associated with any document.
abstract  XmlElement newFragment(java.lang.String elementNamespace, java.lang.String elementName)
          Create XML fragment that is not associated with any document.
abstract  XmlElement newFragment(XmlNamespace elementNamespace, java.lang.String elementName)
          Create XML fragment that is not associated with any document.
static XmlInfosetBuilder newInstance()
          Create a new instance of the builder.
static XmlInfosetBuilder newInstance(XmlPullParserFactory factory)
           
abstract  XmlNamespace newNamespace(java.lang.String namespaceName)
          Create a new namespace that is not associated with any XML document.
abstract  XmlNamespace newNamespace(java.lang.String prefix, java.lang.String namespaceName)
          Create a new namespace that is not associated with any XML document.
abstract  XmlDocument parse(XmlPullParser sourceForDocument)
          Parse document - parser must be in START_DOCUMENT state.
 XmlElement parseFragementFromInputStream(java.io.InputStream is, java.lang.String encoding)
          Parse input stream to create XML fragment using specified encoding.
abstract  XmlElement parseFragment(XmlPullParser sourceForXml)
          Parse fragment - parser must be on START_TAG.
 XmlElement parseFragmentFromInputStream(java.io.InputStream is)
          Parse input stream to create XML fragment.
 XmlElement parseFragmentFromReader(java.io.Reader reader)
          Parse reader to create XML fragment.
 XmlDocument parseInputStream(java.io.InputStream is)
          Parse input stream to create XML document.
 XmlDocument parseInputStream(java.io.InputStream is, java.lang.String encoding)
          Parse input stream to create XML document using specified encoding.
abstract  java.lang.Object parseItem(XmlPullParser pp)
          Will convert current parser state into event rerpresenting XML infoset item: START_Document: XmlDocument without root element START_TAG: XmlElement without children TEXT: String or XmlCHaracters depending on builder mode additiona states to corresponding XML infoset items (when implemented!)
abstract  XmlDocument parseLocation(java.lang.String locationUrl)
          Parse input from URL location to create XML document.
 XmlDocument parseReader(java.io.Reader reader)
          Parse reader to create XML document.
abstract  XmlElement parseStartTag(XmlPullParser pp)
          Parser must be on START_TAG and this method will convert START_TAG content into XmlELement.
abstract  void serialize(java.lang.Object item, XmlSerializer serializer)
          Serialize XML infoset item including serializing of children.
abstract  void serializeEndTag(XmlElement el, XmlSerializer ser)
          Write XML end tag with information provided in XML element.
abstract  void serializeItem(java.lang.Object item, XmlSerializer serializer)
          Serialize XML infoset item without serializing any of children.
abstract  void serializeStartTag(XmlElement el, XmlSerializer ser)
          Write XML start tag with information provided in XML element.
 void serializeToOutputStream(java.lang.Object item, java.io.OutputStream os)
          Serialize item using default UTF8 encoding.
 void serializeToOutputStream(java.lang.Object item, java.io.OutputStream os, java.lang.String encoding)
          Serialize item to given output stream using given character encoding.
 java.lang.String serializeToString(java.lang.Object item)
          Convert item into String representing XML content.
 void serializeToWriter(java.lang.Object item, java.io.Writer writer)
          Serialize item to given writer.
 void skipSubTree(XmlPullParser pp)
          Move parser from START_TAG to the corresponding END_TAG which means that XML sub tree is skipped.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

factory

protected XmlPullParserFactory factory
Constructor Detail

XmlInfosetBuilder

public XmlInfosetBuilder()
Method Detail

newInstance

public static XmlInfosetBuilder newInstance()
                                     throws XmlBuilderException
Create a new instance of the builder.

Throws:
XmlBuilderException

newInstance

public static XmlInfosetBuilder newInstance(XmlPullParserFactory factory)
                                     throws XmlBuilderException
Throws:
XmlBuilderException

getFactory

public XmlPullParserFactory getFactory()
                                throws XmlBuilderException
Method get XmlPull factory that is ued by this builder.

Throws:
XmlBuilderException

newDocument

public XmlDocument newDocument()
                        throws XmlBuilderException
Create a new document.

Throws:
XmlBuilderException

newDocument

public abstract XmlDocument newDocument(java.lang.String version,
                                        java.lang.Boolean standalone,
                                        java.lang.String characterEncoding)
                                 throws XmlBuilderException
Create a new document with given XML prolog.

Parameters:
version - a String
standalone - a Boolean
characterEncoding - a String
Returns:
a XmlDocument
Throws:
XmlBuilderException

newFragment

public abstract XmlElement newFragment(java.lang.String elementName)
                                throws XmlBuilderException
Create XML fragment that is not associated with any document.

Parameters:
elementName - name of element
Returns:
a XmlElement
Throws:
XmlBuilderException

newFragment

public abstract XmlElement newFragment(java.lang.String elementNamespace,
                                       java.lang.String elementName)
                                throws XmlBuilderException
Create XML fragment that is not associated with any document.

Parameters:
elementNamespace - namespace of element
elementName - name of element
Returns:
a XmlElement
Throws:
XmlBuilderException

newFragment

public abstract XmlElement newFragment(XmlNamespace elementNamespace,
                                       java.lang.String elementName)
                                throws XmlBuilderException
Create XML fragment that is not associated with any document.

Parameters:
elementNamespace - a XmlNamespace
elementName - a String
Returns:
a XmlElement
Throws:
XmlBuilderException

newNamespace

public abstract XmlNamespace newNamespace(java.lang.String namespaceName)
                                   throws XmlBuilderException
Create a new namespace that is not associated with any XML document.

Parameters:
namespaceName - a String
Returns:
a XmlNamespace
Throws:
XmlBuilderException

newNamespace

public abstract XmlNamespace newNamespace(java.lang.String prefix,
                                          java.lang.String namespaceName)
                                   throws XmlBuilderException
Create a new namespace that is not associated with any XML document.

Parameters:
prefix - a String
namespaceName - a String
Returns:
a XmlNamespace
Throws:
XmlBuilderException

parse

public abstract XmlDocument parse(XmlPullParser sourceForDocument)
                           throws XmlBuilderException
Parse document - parser must be in START_DOCUMENT state.

Throws:
XmlBuilderException

parseItem

public abstract java.lang.Object parseItem(XmlPullParser pp)
                                    throws XmlBuilderException
Will convert current parser state into event rerpresenting XML infoset item:

Throws:
XmlBuilderException

parseStartTag

public abstract XmlElement parseStartTag(XmlPullParser pp)
                                  throws XmlBuilderException
Parser must be on START_TAG and this method will convert START_TAG content into XmlELement. Parser location is not chnaged.

Throws:
XmlBuilderException

parseInputStream

public XmlDocument parseInputStream(java.io.InputStream is)
                             throws XmlBuilderException
Parse input stream to create XML document.

Parameters:
is - an InputStream
Returns:
a XmlDocument
Throws:
XmlBuilderException

parseInputStream

public XmlDocument parseInputStream(java.io.InputStream is,
                                    java.lang.String encoding)
                             throws XmlBuilderException
Parse input stream to create XML document using specified encoding.

Parameters:
is - an InputStream
encoding - a String
Returns:
a XmlDocument
Throws:
XmlBuilderException

parseReader

public XmlDocument parseReader(java.io.Reader reader)
                        throws XmlBuilderException
Parse reader to create XML document.

Parameters:
reader - a Reader
Returns:
a XmlDocument
Throws:
XmlBuilderException

parseLocation

public abstract XmlDocument parseLocation(java.lang.String locationUrl)
                                   throws XmlBuilderException
Parse input from URL location to create XML document.

Parameters:
locationUrl - a String
Returns:
a XmlDocument
Throws:
XmlBuilderException

parseFragment

public abstract XmlElement parseFragment(XmlPullParser sourceForXml)
                                  throws XmlBuilderException
Parse fragment - parser must be on START_TAG. After parsing is on corresponding END_TAG.

Throws:
XmlBuilderException

parseFragmentFromInputStream

public XmlElement parseFragmentFromInputStream(java.io.InputStream is)
                                        throws XmlBuilderException
Parse input stream to create XML fragment.

Parameters:
is - an InputStream
Returns:
a XmlElement
Throws:
XmlBuilderException

parseFragementFromInputStream

public XmlElement parseFragementFromInputStream(java.io.InputStream is,
                                                java.lang.String encoding)
                                         throws XmlBuilderException
Parse input stream to create XML fragment using specified encoding.

Parameters:
is - an InputStream
encoding - a String
Returns:
a XmlElement
Throws:
XmlBuilderException

parseFragmentFromReader

public XmlElement parseFragmentFromReader(java.io.Reader reader)
                                   throws XmlBuilderException
Parse reader to create XML fragment.

Parameters:
reader - a Reader
Returns:
a XmlElement
Throws:
XmlBuilderException

skipSubTree

public void skipSubTree(XmlPullParser pp)
                 throws XmlBuilderException
Move parser from START_TAG to the corresponding END_TAG which means that XML sub tree is skipped.

Parameters:
pp - a XmlPullParser
Throws:
XmlBuilderException

serializeStartTag

public abstract void serializeStartTag(XmlElement el,
                                       XmlSerializer ser)
                                throws XmlBuilderException
Write XML start tag with information provided in XML element.

Parameters:
el - a XmlElement
ser - a XmlSerializer
Throws:
XmlBuilderException

serializeEndTag

public abstract void serializeEndTag(XmlElement el,
                                     XmlSerializer ser)
                              throws XmlBuilderException
Write XML end tag with information provided in XML element.

Parameters:
el - a XmlElement
ser - a XmlSerializer
Throws:
XmlBuilderException

serialize

public abstract void serialize(java.lang.Object item,
                               XmlSerializer serializer)
                        throws XmlBuilderException
Serialize XML infoset item including serializing of children. If item is Collection all items in collection are serialized by recursively calling this function. This method assumes that item is either interface defined in XB1 API, class String, or that item implements XmlSerializable otherwise IllegalArgumentException is thrown.

Throws:
XmlBuilderException

serializeItem

public abstract void serializeItem(java.lang.Object item,
                                   XmlSerializer serializer)
                            throws XmlBuilderException
Serialize XML infoset item without serializing any of children. This method assumes that item is either interface defined in XB1 API, class String, or item that implements XmlSerializable otherwise IllegalArgumentException is thrown.

Throws:
XmlBuilderException

serializeToOutputStream

public void serializeToOutputStream(java.lang.Object item,
                                    java.io.OutputStream os)
                             throws XmlBuilderException
Serialize item using default UTF8 encoding.

Throws:
XmlBuilderException
See Also:
serializeItem

serializeToOutputStream

public void serializeToOutputStream(java.lang.Object item,
                                    java.io.OutputStream os,
                                    java.lang.String encoding)
                             throws XmlBuilderException
Serialize item to given output stream using given character encoding.

Parameters:
item - an Object
os - an OutputStream
encoding - a String
Throws:
XmlBuilderException
See Also:
serializeItem

serializeToWriter

public void serializeToWriter(java.lang.Object item,
                              java.io.Writer writer)
                       throws XmlBuilderException
Serialize item to given writer.

Parameters:
item - an Object
writer - a Writer
Throws:
XmlBuilderException

serializeToString

public java.lang.String serializeToString(java.lang.Object item)
                                   throws XmlBuilderException
Convert item into String representing XML content.

Parameters:
item - an Object
Returns:
a String
Throws:
XmlBuilderException