org.apache.axiom.ts.om.sourcedelement
Class PushOMDataSource

java.lang.Object
  extended by org.apache.axiom.om.ds.AbstractOMDataSource
      extended by org.apache.axiom.om.ds.AbstractPushOMDataSource
          extended by org.apache.axiom.ts.om.sourcedelement.PushOMDataSource
All Implemented Interfaces:
OMDataSource, OMDataSourceExt, QNameAwareOMDataSource

public class PushOMDataSource
extends AbstractPushOMDataSource
implements QNameAwareOMDataSource


Field Summary
 
Fields inherited from interface org.apache.axiom.om.OMDataSourceExt
LOSSY_PREFIX
 
Constructor Summary
PushOMDataSource()
           
 
Method Summary
 String getLocalName()
          Get the local name of the element represented by this data source.
 String getNamespaceURI()
          Get the namespace URI of the element represented by this data source.
 String getPrefix()
          Get the namespace prefix of the element represented by this data source.
 boolean isDestructiveWrite()
          Returns true if writing the backing object is destructive.
 void serialize(XMLStreamWriter writer)
          Serializes element data directly to StAX writer.
 
Methods inherited from class org.apache.axiom.om.ds.AbstractPushOMDataSource
getReader, isDestructiveRead
 
Methods inherited from class org.apache.axiom.om.ds.AbstractOMDataSource
close, copy, getObject, getProperty, getXMLBytes, getXMLInputStream, hasProperty, serialize, serialize, setProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.axiom.om.OMDataSource
getReader, serialize, serialize
 

Constructor Detail

PushOMDataSource

public PushOMDataSource()
Method Detail

serialize

public void serialize(XMLStreamWriter writer)
               throws XMLStreamException
Description copied from interface: OMDataSource
Serializes element data directly to StAX writer.

The implementation of this method must satisfy the following requirements:

On the other hand, the caller of this method (typically an OMSourcedElement instance) must ensure that the following requirements are satisfied:

It is assumed that this method consumes the content (i.e. destroys the backing object) unless the data source also implements OMDataSourceExt and OMDataSourceExt.isDestructiveWrite() returns false.

Specified by:
serialize in interface OMDataSource
Parameters:
writer - destination writer
Throws:
XMLStreamException

isDestructiveWrite

public boolean isDestructiveWrite()
Description copied from interface: OMDataSourceExt
Returns true if writing the backing object is destructive. An example of an object with a destructive write is an InputStream. The owning OMSourcedElement uses this information to detemine if OM tree expansion is needed when writing the OMDataSourceExt.

Specified by:
isDestructiveWrite in interface OMDataSourceExt
Returns:
boolean

getLocalName

public String getLocalName()
Description copied from interface: QNameAwareOMDataSource
Get the local name of the element represented by this data source.

Specified by:
getLocalName in interface QNameAwareOMDataSource
Returns:
the local name of the element or null if the local name is not known

getNamespaceURI

public String getNamespaceURI()
Description copied from interface: QNameAwareOMDataSource
Get the namespace URI of the element represented by this data source.

Specified by:
getNamespaceURI in interface QNameAwareOMDataSource
Returns:
the namespace URI of the element, the empty string if the element has no namespace or null if the namespace URI is not known

getPrefix

public String getPrefix()
Description copied from interface: QNameAwareOMDataSource
Get the namespace prefix of the element represented by this data source.

Specified by:
getPrefix in interface QNameAwareOMDataSource
Returns:
the prefix of the element, the empty string if the element has no prefix or null if the prefix is not known; the implementation is expected to return an empty string if QNameAwareOMDataSource.getNamespaceURI() returns an empty string (because an element without namespace must not have a prefix)


Copyright © 2004-2012 The Apache Software Foundation. All Rights Reserved.