public class ByteArrayDataSource extends OMDataSourceExtBase
Modifier and Type | Class and Description |
---|---|
class |
ByteArrayDataSource.ByteArray
Object containing the byte[]/encoding pair
|
LOSSY_PREFIX
Constructor and Description |
---|
ByteArrayDataSource(byte[] bytes,
String encoding)
Constructor
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Close the DataSource and free its resources.
|
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.
|
byte[] |
getXMLBytes(String encoding)
Returns a byte[] representing the xml data
|
boolean |
isDestructiveRead()
Returns true if reading the backing object is destructive.
|
boolean |
isDestructiveWrite()
Returns true if writing the backing object is destructive.
|
getProperty, getXMLInputStream, hasProperty, serialize, serialize, serialize, setProperty
public ByteArrayDataSource(byte[] bytes, String encoding)
bytes
- encoding
- public XMLStreamReader getReader() throws XMLStreamException
OMDataSource
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
.
XMLStreamException
public Object getObject()
OMDataSourceExt
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).
null
if the data source has no backing object or
if the backing object can't be accessed in a safe waypublic boolean isDestructiveRead()
OMDataSourceExt
public boolean isDestructiveWrite()
OMDataSourceExt
public byte[] getXMLBytes(String encoding) throws UnsupportedEncodingException
OMDataSourceExt
encoding
- String encoding of InputStreamUnsupportedEncodingException
OMDataSourceExt.getXMLInputStream(String)
public void close()
OMDataSourceExt
public OMDataSourceExt copy()
OMDataSourceExt
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.null
if the data source can't be copied
(e.g. because it is destructive)Copyright © 2004–2018 The Apache Software Foundation. All rights reserved.