Class WrappedTextNodeOMDataSourceFromDataSource

  extended by
      extended by
          extended by
              extended by
All Implemented Interfaces:
OMDataSource, OMDataSourceExt, QNameAwareOMDataSource

public class WrappedTextNodeOMDataSourceFromDataSource
extends WrappedTextNodeOMDataSource

WrappedTextNodeOMDataSource that pulls the text data from a DataSource object. The getObject() method returns the DataSource instance.

Field Summary
Fields inherited from class
Fields inherited from interface
Constructor Summary
WrappedTextNodeOMDataSourceFromDataSource(QName wrapperElementName, DataSource binaryData, Charset charset)
Method Summary
 OMDataSourceExt copy()
          Create a copy of the data source.
 Object getObject()
          Get the object that backs this data source.
 XMLStreamReader getReader()
          Get parser for element data.
 boolean isDestructiveRead()
          Returns true if reading the backing object is destructive.
Methods inherited from class
getLocalName, getNamespaceURI, getPrefix
Methods inherited from class
isDestructiveWrite, serialize
Methods inherited from class
close, 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
serialize, serialize, serialize

Constructor Detail


public WrappedTextNodeOMDataSourceFromDataSource(QName wrapperElementName,
                                                 DataSource binaryData,
                                                 Charset charset)
Method Detail


public XMLStreamReader getReader()
                          throws XMLStreamException
Description copied from interface: OMDataSource
Get 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 OMDataSourceExt and OMDataSourceExt.isDestructiveRead() returns false.

element parser


public Object getObject()
Description copied from interface: OMDataSourceExt
Get the object that backs this data source. Application code should in general not call this method directly, but use OMSourcedElement.getObject(Class) instead.

Data sources that support non destructive read/write should return the object from which the XML is produced. Data sources with destructive read/write should return a non null value only if the backing object has not been consumed yet (even partially).

Specified by:
getObject in interface OMDataSourceExt
getObject in class AbstractOMDataSource
the backing object, or null if the data source has no backing object or if the backing object can't be accessed in a safe way


public boolean isDestructiveRead()
Description copied from interface: OMDataSourceExt
Returns 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.



public OMDataSourceExt copy()
Description copied from interface: OMDataSourceExt
Create a copy of the data source. This method is used by OMInformationItem.clone(OMCloneOptions) when the OMCloneOptions.isCopyOMDataSources() option is enabled. If the data source is immutable and stateless, then it may return a reference to itself instead of creating a new data source instance.

Specified by:
copy in interface OMDataSourceExt
copy in class AbstractOMDataSource
the copy of the data source, or null if the data source can't be copied (e.g. because it is destructive)

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