Class AbstractPushOMDataSource
- java.lang.Object
-
- org.apache.axiom.om.ds.AbstractOMDataSource
-
- org.apache.axiom.om.ds.AbstractPushOMDataSource
-
- All Implemented Interfaces:
OMDataSource,OMDataSourceExt
- Direct Known Subclasses:
JAXBOMDataSource
public abstract class AbstractPushOMDataSource extends AbstractOMDataSource
Base class forOMDataSourceExtimplementations that can easily serialize the content to anXMLStreamWriterbut that are unable to produce the content as anXMLStreamReader.OMSourcedElementwill handleOMDataSourceimplementations extending this class differently when it comes to expansion: instead of usingOMDataSource.getReader()to expand the element, it will useOMDataSource.serialize(XMLStreamWriter)(with a specialXMLStreamWriterthat builds the descendants of theOMSourcedElement). This means that such anOMSourcedElementwill be expanded instantly, and that deferred building of the descendants is not applicable.
-
-
Constructor Summary
Constructors Constructor Description AbstractPushOMDataSource()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description XMLStreamReadergetReader()Get parser for element data.booleanisDestructiveRead()Returns true if reading the backing object is destructive.-
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
serialize
-
Methods inherited from interface org.apache.axiom.om.OMDataSourceExt
isDestructiveWrite
-
-
-
-
Method Detail
-
isDestructiveRead
public final boolean isDestructiveRead()
Description copied from interface:OMDataSourceExtReturns true if reading the backing object is destructive. An example of an object with a destructive read is an InputSteam. The owning OMSourcedElement uses this information to detemine if OM tree expansion is needed when reading the OMDataSourceExt.- Returns:
- boolean
-
getReader
public final XMLStreamReader getReader() throws XMLStreamException
Description copied from interface:OMDataSourceGet parser for element data. In the general case this may require the data source to serialize data as XML text and then parse that text.It is assumed that this method consumed the content (i.e. destroys the backing object) unless the data source also implements
OMDataSourceExtandOMDataSourceExt.isDestructiveRead()returnsfalse.OMSourcedElementimplementations are expected to callXMLStreamReader.close()on the returned reader as soon as the element is completely built.- Returns:
- element parser
- Throws:
XMLStreamException
-
-