Package org.apache.axiom.om.ds
Class WrappedTextNodeOMDataSourceFromReader
java.lang.Object
org.apache.axiom.om.ds.AbstractOMDataSource
org.apache.axiom.om.ds.AbstractPullOMDataSource
org.apache.axiom.om.ds.WrappedTextNodeOMDataSource
org.apache.axiom.om.ds.WrappedTextNodeOMDataSourceFromReader
- All Implemented Interfaces:
OMDataSource,OMDataSourceExt,QNameAwareOMDataSource
WrappedTextNodeOMDataSource that pulls text data from a Reader object. Since the
stream can only be read once, this data source is destructive. The getObject() method
returns the Reader object if it has not been accessed yet.-
Field Summary
Fields inherited from class org.apache.axiom.om.ds.WrappedTextNodeOMDataSource
wrapperElementName -
Constructor Summary
ConstructorsConstructorDescriptionWrappedTextNodeOMDataSourceFromReader(QName wrapperElementName, Reader reader) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Close the DataSource and free its resources.Get the object that backs this data source.Get parser for element data.booleanReturns true if reading the backing object is destructive.Methods inherited from class org.apache.axiom.om.ds.WrappedTextNodeOMDataSource
getLocalName, getNamespaceURI, getPrefixMethods inherited from class org.apache.axiom.om.ds.AbstractPullOMDataSource
isDestructiveWrite, serializeMethods inherited from class org.apache.axiom.om.ds.AbstractOMDataSource
copy, getProperty, getXMLBytes, getXMLInputStream, hasProperty, serialize, serialize, setPropertyMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.axiom.om.OMDataSource
serialize, serialize, serialize
-
Constructor Details
-
WrappedTextNodeOMDataSourceFromReader
-
-
Method Details
-
getReader
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
-
getObject
Description copied from interface:OMDataSourceExtGet the object that backs this data source. Application code should in general not call this method directly, but useOMSourcedElement.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:
getObjectin interfaceOMDataSourceExt- Overrides:
getObjectin classAbstractOMDataSource- Returns:
- the backing object, or
nullif the data source has no backing object or if the backing object can't be accessed in a safe way
-
isDestructiveRead
public 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
-
close
public void close()Description copied from interface:OMDataSourceExtClose the DataSource and free its resources.- Specified by:
closein interfaceOMDataSourceExt- Overrides:
closein classAbstractOMDataSource
-