org.apache.axiom.om.impl.llom
Class OMElementImpl

java.lang.Object
  extended byorg.apache.axiom.om.impl.llom.OMNodeImpl
      extended byorg.apache.axiom.om.impl.llom.OMElementImpl
All Implemented Interfaces:
org.apache.axiom.om.OMConstants, org.apache.axiom.om.OMContainer, org.apache.axiom.om.impl.OMContainerEx, org.apache.axiom.om.OMElement, org.apache.axiom.om.OMNode, org.apache.axiom.om.impl.OMNodeEx
Direct Known Subclasses:
OMSourcedElementImpl, SOAPElement, SOAPHeaderBlockImpl

public class OMElementImpl
extends OMNodeImpl
implements org.apache.axiom.om.OMElement, org.apache.axiom.om.OMConstants, org.apache.axiom.om.impl.OMContainerEx

Class OMElementImpl


Field Summary
protected  java.util.HashMap attributes
          Field attributes
static org.apache.axiom.om.OMNamespace DEFAULT_DEFAULT_NS_OBJECT
           
protected  org.apache.axiom.om.OMNode firstChild
          Field firstChild
protected  org.apache.axiom.om.OMNode lastChild
           
protected  java.lang.String localName
          Field localName
protected  java.util.HashMap namespaces
          Field namespaces
protected  int noPrefixNamespaceCounter
          Field noPrefixNamespaceCounter
protected  org.apache.axiom.om.OMNamespace ns
          Field ns
 
Fields inherited from class org.apache.axiom.om.impl.llom.OMNodeImpl
builder, done, factory, nextSibling, nodeType, parent, previousSibling
 
Fields inherited from interface org.apache.axiom.om.OMNode
CDATA_SECTION_NODE, COMMENT_NODE, DTD_NODE, ELEMENT_NODE, ENTITY_REFERENCE_NODE, PI_NODE, SPACE_NODE, TEXT_NODE
 
Fields inherited from interface org.apache.axiom.om.OMConstants
ARRAY_ITEM_LOCALNAME, ARRAY_ITEM_NS_PREFIX, ARRAY_ITEM_NSURI, ARRAY_ITEM_QNAME, DATA_HANDLER, DEFAULT_CHAR_SET_ENCODING, DEFAULT_DEFAULT_NAMESPACE, DEFAULT_XML_VERSION, IS_BINARY, IS_DATA_HANDLERS_AWARE, PULL_TYPE_BUILDER, PUSH_TYPE_BUILDER, XMLNS_NS_PREFIX, XMLNS_NS_URI, XMLNS_PREFIX, XMLNS_URI
 
Constructor Summary
OMElementImpl(javax.xml.namespace.QName qname, org.apache.axiom.om.OMContainer parent, org.apache.axiom.om.OMFactory factory)
          It is assumed that the QName passed contains, at least, the localName for this element.
OMElementImpl(java.lang.String localName, org.apache.axiom.om.OMNamespace ns, org.apache.axiom.om.OMContainer parent, org.apache.axiom.om.OMFactory factory)
          This is the basic constructor for OMElement.
OMElementImpl(java.lang.String localName, org.apache.axiom.om.OMNamespace ns, org.apache.axiom.om.OMContainer parent, org.apache.axiom.om.OMXMLParserWrapper builder, org.apache.axiom.om.OMFactory factory)
          Constructor OMElementImpl.
OMElementImpl(java.lang.String localName, org.apache.axiom.om.OMNamespace ns, org.apache.axiom.om.OMFactory factory)
          Constructor OMElementImpl.
 
Method Summary
 org.apache.axiom.om.OMAttribute addAttribute(org.apache.axiom.om.OMAttribute attr)
          Inserts an attribute to this element.
 org.apache.axiom.om.OMAttribute addAttribute(java.lang.String attributeName, java.lang.String value, org.apache.axiom.om.OMNamespace ns)
          Method addAttribute.
 void addChild(org.apache.axiom.om.OMNode child)
          Adds child to the element.
 void build()
          Parses this node and builds the object structure in memory.
 void buildNext()
          Forces the parser to proceed, if parser has not yet finished with the XML input.
 void buildWithAttachments()
          Parses this node and builds the object structure in memory.
 org.apache.axiom.om.OMElement cloneOMElement()
           
 org.apache.axiom.om.OMNamespace declareDefaultNamespace(java.lang.String uri)
          We use "" to store the default namespace of this element.
 org.apache.axiom.om.OMNamespace declareNamespace(org.apache.axiom.om.OMNamespace namespace)
           
 org.apache.axiom.om.OMNamespace declareNamespace(java.lang.String uri, java.lang.String prefix)
          Creates a namespace in the current element scope.
 org.apache.axiom.om.OMNode detach()
          Removes this information item and its children, from the model completely.
 void discard()
          Method discard.
 org.apache.axiom.om.OMNamespace findNamespace(java.lang.String uri, java.lang.String prefix)
          Finds a namespace with the given uri and prefix, in the scope of the document.
 org.apache.axiom.om.OMNamespace findNamespaceURI(java.lang.String prefix)
           
 java.util.Iterator getAllAttributes()
          Returns a List of OMAttributes.
 java.util.Iterator getAllDeclaredNamespaces()
          Method getAllDeclaredNamespaces.
 org.apache.axiom.om.OMAttribute getAttribute(javax.xml.namespace.QName qname)
          Returns a named attribute if present.
 java.lang.String getAttributeValue(javax.xml.namespace.QName qname)
          Returns a named attribute's value, if present.
 org.apache.axiom.om.OMXMLParserWrapper getBuilder()
          Method getBuilder.
 java.util.Iterator getChildElements()
          Returns a filtered list of children - just the elements.
 java.util.Iterator getChildren()
          Returns a collection of this element.
 java.util.Iterator getChildrenWithName(javax.xml.namespace.QName elementQName)
          Searches for children with a given QName and returns an iterator to traverse through the OMNodes.
 org.apache.axiom.om.OMNamespace getDefaultNamespace()
           
 org.apache.axiom.om.OMElement getFirstChildWithName(javax.xml.namespace.QName elementQName)
          Method getFirstChildWithName.
 org.apache.axiom.om.OMElement getFirstElement()
          Gets first element.
 org.apache.axiom.om.OMNode getFirstOMChild()
          Method getFirstOMChild.
 int getLineNumber()
           
 java.lang.String getLocalName()
          Method getLocalName.
 org.apache.axiom.om.OMNamespace getNamespace()
          Method getNamespace.
 org.apache.axiom.om.OMNode getNextOMSibling()
          Gets the next sibling.
 javax.xml.namespace.QName getQName()
          Method getQName.
 java.lang.String getText()
          Selects all the text children and concatinates them to a single string.
 javax.xml.namespace.QName getTextAsQName()
           
 java.lang.String getTrimmedText()
          Returns the concatination string of TRIMMED values of all OMText child nodes of this element.
 int getType()
          Gets the type of node, as this is the super class of all the nodes.
 javax.xml.stream.XMLStreamReader getXMLStreamReader()
          Method getXMLStreamReader.
 javax.xml.stream.XMLStreamReader getXMLStreamReaderWithoutCaching()
          Method getXMLStreamReaderWithoutCaching.
 void internalSerialize(javax.xml.stream.XMLStreamWriter writer)
          Method internalSerialize.
protected  void internalSerialize(javax.xml.stream.XMLStreamWriter writer, boolean cache)
           
 void internalSerializeAndConsume(javax.xml.stream.XMLStreamWriter writer)
          This method serializes and consumes without building the object structure in memory.
 boolean isComplete()
          Method isComplete.
protected  void notifyChildComplete()
          This method will be called when one of the children becomes complete.
 void removeAttribute(org.apache.axiom.om.OMAttribute attr)
          Method removeAttribute.
 javax.xml.namespace.QName resolveQName(java.lang.String qname)
          Converts a prefix:local qname string into a proper QName, evaluating it in the OMElement context.
 void setBuilder(org.apache.axiom.om.OMXMLParserWrapper wrapper)
          Method setBuilder.
 void setFirstChild(org.apache.axiom.om.OMNode firstChild)
          Method setFirstChild.
 void setLineNumber(int lineNumber)
           
 void setLocalName(java.lang.String localName)
          Method setLocalName.
 void setNamespace(org.apache.axiom.om.OMNamespace namespace)
          Method setNamespace.
 void setNamespaceWithNoFindInCurrentScope(org.apache.axiom.om.OMNamespace namespace)
           
 void setText(javax.xml.namespace.QName text)
          Sets the text, as a QName, of the given element.
 void setText(java.lang.String text)
          Sets the text of the given element.
 java.lang.String toString()
           
 java.lang.String toStringWithConsume()
           
 
Methods inherited from class org.apache.axiom.om.impl.llom.OMNodeImpl
getOMFactory, getParent, getPreviousOMSibling, importNode, insertSiblingAfter, insertSiblingBefore, serialize, serialize, serialize, serialize, serialize, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, setComplete, setNextOMSibling, setParent, setPreviousOMSibling, setType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.axiom.om.OMNode
getOMFactory, getParent, getPreviousOMSibling, insertSiblingAfter, insertSiblingBefore, serialize, serialize, serialize, serialize, serialize, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume
 
Methods inherited from interface org.apache.axiom.om.impl.OMContainerEx
setComplete
 

Field Detail

DEFAULT_DEFAULT_NS_OBJECT

public static final org.apache.axiom.om.OMNamespace DEFAULT_DEFAULT_NS_OBJECT

ns

protected org.apache.axiom.om.OMNamespace ns
Field ns


localName

protected java.lang.String localName
Field localName


firstChild

protected org.apache.axiom.om.OMNode firstChild
Field firstChild


namespaces

protected java.util.HashMap namespaces
Field namespaces


attributes

protected java.util.HashMap attributes
Field attributes


noPrefixNamespaceCounter

protected int noPrefixNamespaceCounter
Field noPrefixNamespaceCounter


lastChild

protected org.apache.axiom.om.OMNode lastChild
Constructor Detail

OMElementImpl

public OMElementImpl(java.lang.String localName,
                     org.apache.axiom.om.OMNamespace ns,
                     org.apache.axiom.om.OMContainer parent,
                     org.apache.axiom.om.OMXMLParserWrapper builder,
                     org.apache.axiom.om.OMFactory factory)
Constructor OMElementImpl. A null namespace indicates that the default namespace in scope is used


OMElementImpl

public OMElementImpl(java.lang.String localName,
                     org.apache.axiom.om.OMNamespace ns,
                     org.apache.axiom.om.OMFactory factory)
Constructor OMElementImpl.


OMElementImpl

public OMElementImpl(java.lang.String localName,
                     org.apache.axiom.om.OMNamespace ns,
                     org.apache.axiom.om.OMContainer parent,
                     org.apache.axiom.om.OMFactory factory)
This is the basic constructor for OMElement. All the other constructors depends on this.

Parameters:
localName - - this MUST always be not null
ns - - can be null
parent - - this should be an OMContainer
factory - - factory that created this OMElement

A null namespace indicates that the default namespace in scope is used


OMElementImpl

public OMElementImpl(javax.xml.namespace.QName qname,
                     org.apache.axiom.om.OMContainer parent,
                     org.apache.axiom.om.OMFactory factory)
              throws org.apache.axiom.om.OMException
It is assumed that the QName passed contains, at least, the localName for this element.

Parameters:
qname - - this should be valid qname according to javax.xml.namespace.QName
Throws:
org.apache.axiom.om.OMException
Method Detail

addChild

public void addChild(org.apache.axiom.om.OMNode child)
Adds child to the element. One can decide whether to append the child or to add to the front of the children list.

Specified by:
addChild in interface org.apache.axiom.om.OMContainer

getChildrenWithName

public java.util.Iterator getChildrenWithName(javax.xml.namespace.QName elementQName)
Searches for children with a given QName and returns an iterator to traverse through the OMNodes. This QName can contain any combination of prefix, localname and URI.

Specified by:
getChildrenWithName in interface org.apache.axiom.om.OMContainer
Throws:
org.apache.axiom.om.OMException

getFirstChildWithName

public org.apache.axiom.om.OMElement getFirstChildWithName(javax.xml.namespace.QName elementQName)
                                                    throws org.apache.axiom.om.OMException
Method getFirstChildWithName.

Specified by:
getFirstChildWithName in interface org.apache.axiom.om.OMContainer
Throws:
org.apache.axiom.om.OMException

getNextOMSibling

public org.apache.axiom.om.OMNode getNextOMSibling()
                                            throws org.apache.axiom.om.OMException
Gets the next sibling. This can be an OMAttribute or OMText or OMELement for others.

Specified by:
getNextOMSibling in interface org.apache.axiom.om.OMNode
Overrides:
getNextOMSibling in class OMNodeImpl
Returns:
Returns OMNode.
Throws:
org.apache.axiom.om.OMException

getChildren

public java.util.Iterator getChildren()
Returns a collection of this element. Children can be of types OMElement, OMText.

Specified by:
getChildren in interface org.apache.axiom.om.OMContainer
Returns:
Returns children.

getChildElements

public java.util.Iterator getChildElements()
Returns a filtered list of children - just the elements.

Specified by:
getChildElements in interface org.apache.axiom.om.OMElement
Returns:
Returns an iterator of the child elements.

declareNamespace

public org.apache.axiom.om.OMNamespace declareNamespace(java.lang.String uri,
                                                        java.lang.String prefix)
Creates a namespace in the current element scope.

Specified by:
declareNamespace in interface org.apache.axiom.om.OMElement
Returns:
Returns namespace.

declareDefaultNamespace

public org.apache.axiom.om.OMNamespace declareDefaultNamespace(java.lang.String uri)
We use "" to store the default namespace of this element. As one can see user can not give "" as the prefix, when he declare a usual namespace.

Specified by:
declareDefaultNamespace in interface org.apache.axiom.om.OMElement
Parameters:
uri -

getDefaultNamespace

public org.apache.axiom.om.OMNamespace getDefaultNamespace()
Specified by:
getDefaultNamespace in interface org.apache.axiom.om.OMElement

declareNamespace

public org.apache.axiom.om.OMNamespace declareNamespace(org.apache.axiom.om.OMNamespace namespace)
Specified by:
declareNamespace in interface org.apache.axiom.om.OMElement
Returns:
Returns namespace.

findNamespace

public org.apache.axiom.om.OMNamespace findNamespace(java.lang.String uri,
                                                     java.lang.String prefix)
Finds a namespace with the given uri and prefix, in the scope of the document. Starts to find from the current element and goes up in the hiararchy until one is found. If none is found, returns null.

Specified by:
findNamespace in interface org.apache.axiom.om.OMElement

findNamespaceURI

public org.apache.axiom.om.OMNamespace findNamespaceURI(java.lang.String prefix)
Specified by:
findNamespaceURI in interface org.apache.axiom.om.OMElement

getAllDeclaredNamespaces

public java.util.Iterator getAllDeclaredNamespaces()
Method getAllDeclaredNamespaces.

Specified by:
getAllDeclaredNamespaces in interface org.apache.axiom.om.OMElement
Returns:
Returns Iterator.

getAllAttributes

public java.util.Iterator getAllAttributes()
Returns a List of OMAttributes.

Specified by:
getAllAttributes in interface org.apache.axiom.om.OMElement
Returns:
Returns iterator.

getAttribute

public org.apache.axiom.om.OMAttribute getAttribute(javax.xml.namespace.QName qname)
Returns a named attribute if present.

Specified by:
getAttribute in interface org.apache.axiom.om.OMElement
Parameters:
qname - the qualified name to search for
Returns:
Returns an OMAttribute with the given name if found, or null

getAttributeValue

public java.lang.String getAttributeValue(javax.xml.namespace.QName qname)
Returns a named attribute's value, if present.

Specified by:
getAttributeValue in interface org.apache.axiom.om.OMElement
Parameters:
qname - the qualified name to search for
Returns:
Returns a String containing the attribute value, or null.

addAttribute

public org.apache.axiom.om.OMAttribute addAttribute(org.apache.axiom.om.OMAttribute attr)
Inserts an attribute to this element. Implementor can decide as to insert this in the front or at the end of set of attributes.

Specified by:
addAttribute in interface org.apache.axiom.om.OMElement
Returns:
Returns attribute.

removeAttribute

public void removeAttribute(org.apache.axiom.om.OMAttribute attr)
Method removeAttribute.

Specified by:
removeAttribute in interface org.apache.axiom.om.OMElement

addAttribute

public org.apache.axiom.om.OMAttribute addAttribute(java.lang.String attributeName,
                                                    java.lang.String value,
                                                    org.apache.axiom.om.OMNamespace ns)
Method addAttribute.

Specified by:
addAttribute in interface org.apache.axiom.om.OMElement
Returns:
Returns OMAttribute.

setBuilder

public void setBuilder(org.apache.axiom.om.OMXMLParserWrapper wrapper)
Method setBuilder.

Specified by:
setBuilder in interface org.apache.axiom.om.OMElement

getBuilder

public org.apache.axiom.om.OMXMLParserWrapper getBuilder()
Method getBuilder.

Specified by:
getBuilder in interface org.apache.axiom.om.OMElement
Returns:
Returns OMXMLParserWrapper.

buildNext

public void buildNext()
Forces the parser to proceed, if parser has not yet finished with the XML input.

Specified by:
buildNext in interface org.apache.axiom.om.OMContainer

getFirstOMChild

public org.apache.axiom.om.OMNode getFirstOMChild()
Method getFirstOMChild.

Specified by:
getFirstOMChild in interface org.apache.axiom.om.OMContainer
Returns:
Returns child.

setFirstChild

public void setFirstChild(org.apache.axiom.om.OMNode firstChild)
Method setFirstChild.

Specified by:
setFirstChild in interface org.apache.axiom.om.OMElement

detach

public org.apache.axiom.om.OMNode detach()
                                  throws org.apache.axiom.om.OMException
Removes this information item and its children, from the model completely.

Specified by:
detach in interface org.apache.axiom.om.OMNode
Overrides:
detach in class OMNodeImpl
Throws:
org.apache.axiom.om.OMException

isComplete

public boolean isComplete()
Method isComplete.

Specified by:
isComplete in interface org.apache.axiom.om.OMNode
Overrides:
isComplete in class OMNodeImpl
Returns:
Returns boolean.

getType

public int getType()
Gets the type of node, as this is the super class of all the nodes.

Specified by:
getType in interface org.apache.axiom.om.OMNode
Overrides:
getType in class OMNodeImpl
Returns:
Returns the type of node as indicated by OMNodeImpl.setType(int)
See Also:
OMNodeImpl.setType(int)

build

public void build()
           throws org.apache.axiom.om.OMException
Description copied from class: OMNodeImpl
Parses this node and builds the object structure in memory. However a node, created programmatically, will have done set to true by default and this will cause populateyourself not to work properly!

Specified by:
build in interface org.apache.axiom.om.OMNode
Overrides:
build in class OMNodeImpl
Throws:
org.apache.axiom.om.OMException

getXMLStreamReader

public javax.xml.stream.XMLStreamReader getXMLStreamReader()
Method getXMLStreamReader.

Specified by:
getXMLStreamReader in interface org.apache.axiom.om.OMElement
See Also:
OMElement.getXMLStreamReader()

getXMLStreamReaderWithoutCaching

public javax.xml.stream.XMLStreamReader getXMLStreamReaderWithoutCaching()
Method getXMLStreamReaderWithoutCaching.

Specified by:
getXMLStreamReaderWithoutCaching in interface org.apache.axiom.om.OMElement
See Also:
OMElement.getXMLStreamReaderWithoutCaching()

setText

public void setText(java.lang.String text)
Sets the text of the given element. caution - This method will wipe out all the text elements (and hence any mixed content) before setting the text.

Specified by:
setText in interface org.apache.axiom.om.OMElement

setText

public void setText(javax.xml.namespace.QName text)
Sets the text, as a QName, of the given element. caution - This method will wipe out all the text elements (and hence any mixed content) before setting the text.

Specified by:
setText in interface org.apache.axiom.om.OMElement

getText

public java.lang.String getText()
Selects all the text children and concatinates them to a single string.

Specified by:
getText in interface org.apache.axiom.om.OMElement
Returns:
Returns String.

getTextAsQName

public javax.xml.namespace.QName getTextAsQName()
Specified by:
getTextAsQName in interface org.apache.axiom.om.OMElement

getTrimmedText

public java.lang.String getTrimmedText()
Returns the concatination string of TRIMMED values of all OMText child nodes of this element. This is included purely to improve usability.


internalSerialize

public void internalSerialize(javax.xml.stream.XMLStreamWriter writer)
                       throws javax.xml.stream.XMLStreamException
Method internalSerialize.

Specified by:
internalSerialize in interface org.apache.axiom.om.impl.OMNodeEx
Overrides:
internalSerialize in class OMNodeImpl
Parameters:
writer -
Throws:
javax.xml.stream.XMLStreamException

internalSerialize

protected void internalSerialize(javax.xml.stream.XMLStreamWriter writer,
                                 boolean cache)
                          throws javax.xml.stream.XMLStreamException
Throws:
javax.xml.stream.XMLStreamException

internalSerializeAndConsume

public void internalSerializeAndConsume(javax.xml.stream.XMLStreamWriter writer)
                                 throws javax.xml.stream.XMLStreamException
This method serializes and consumes without building the object structure in memory. Misuse of this method will cause loss of data. So it is advised to use populateYourSelf() method, before calling this method, if one wants to preserve data in the stream. This was requested during the second Axis2 summit.

Specified by:
internalSerializeAndConsume in interface org.apache.axiom.om.impl.OMNodeEx
Overrides:
internalSerializeAndConsume in class OMNodeImpl
Parameters:
writer -
Throws:
javax.xml.stream.XMLStreamException

getFirstElement

public org.apache.axiom.om.OMElement getFirstElement()
Gets first element.

Specified by:
getFirstElement in interface org.apache.axiom.om.OMElement
Returns:
Returns element.

getLocalName

public java.lang.String getLocalName()
Method getLocalName.

Specified by:
getLocalName in interface org.apache.axiom.om.OMElement
Returns:
Returns local name.

setLocalName

public void setLocalName(java.lang.String localName)
Method setLocalName.

Specified by:
setLocalName in interface org.apache.axiom.om.OMElement

getNamespace

public org.apache.axiom.om.OMNamespace getNamespace()
                                             throws org.apache.axiom.om.OMException
Method getNamespace.

Specified by:
getNamespace in interface org.apache.axiom.om.OMElement
Throws:
org.apache.axiom.om.OMException

setNamespace

public void setNamespace(org.apache.axiom.om.OMNamespace namespace)
Method setNamespace.

Specified by:
setNamespace in interface org.apache.axiom.om.OMElement

setNamespaceWithNoFindInCurrentScope

public void setNamespaceWithNoFindInCurrentScope(org.apache.axiom.om.OMNamespace namespace)
Specified by:
setNamespaceWithNoFindInCurrentScope in interface org.apache.axiom.om.OMElement

getQName

public javax.xml.namespace.QName getQName()
Method getQName.

Specified by:
getQName in interface org.apache.axiom.om.OMElement
Returns:
Returns QName.

toStringWithConsume

public java.lang.String toStringWithConsume()
                                     throws javax.xml.stream.XMLStreamException
Specified by:
toStringWithConsume in interface org.apache.axiom.om.OMElement
Throws:
javax.xml.stream.XMLStreamException

toString

public java.lang.String toString()
Specified by:
toString in interface org.apache.axiom.om.OMElement

discard

public void discard()
             throws org.apache.axiom.om.OMException
Method discard.

Specified by:
discard in interface org.apache.axiom.om.OMNode
Throws:
org.apache.axiom.om.OMException

resolveQName

public javax.xml.namespace.QName resolveQName(java.lang.String qname)
Converts a prefix:local qname string into a proper QName, evaluating it in the OMElement context. Unprefixed qnames resolve to the local namespace.

Specified by:
resolveQName in interface org.apache.axiom.om.OMElement
Parameters:
qname - prefixed qname string to resolve
Returns:
Returns null for any failure to extract a qname.

cloneOMElement

public org.apache.axiom.om.OMElement cloneOMElement()
Specified by:
cloneOMElement in interface org.apache.axiom.om.OMElement

setLineNumber

public void setLineNumber(int lineNumber)
Specified by:
setLineNumber in interface org.apache.axiom.om.OMElement

getLineNumber

public int getLineNumber()
Specified by:
getLineNumber in interface org.apache.axiom.om.OMElement

buildWithAttachments

public void buildWithAttachments()
Description copied from class: OMNodeImpl
Parses this node and builds the object structure in memory. AXIOM supports two levels of deffered building. First is deffered building of AXIOM using StAX. Second level is the deffered building of attachments. AXIOM reads in the attachements from the stream only when user asks by calling getDataHandler(). build() method builds the OM without the attachments. buildAll() builds the OM together with attachement data. This becomes handy when user wants to free the input stream.

Specified by:
buildWithAttachments in interface org.apache.axiom.om.OMNode
Overrides:
buildWithAttachments in class OMNodeImpl

notifyChildComplete

protected void notifyChildComplete()
This method will be called when one of the children becomes complete.



Copyright © 2004-2007 Apache Software Foundation. All Rights Reserved.