Package org.codehaus.stax2.io
Class Stax2Source
java.lang.Object
org.codehaus.stax2.io.Stax2Source
- All Implemented Interfaces:
Source
- Direct Known Subclasses:
Stax2BlockSource
,Stax2ReferentialSource
This is the base class for additional input sources (implementations
of
Source
) that Stax2
XMLInputFactory2
implementations should support.
Note about usage by the parser factory implementations: the expectation
is that at least one of methods constructReader()
and
constructInputStream()
will succeed, but not necessarily both.
This generally depends on type of resource being represented: for example,
if the source is a String or character array, it is most naturally
represent via Reader
. For a byte array, on the other hand,
an InputStream
is the most natural access method.
Other things to note about using result Reader
s and
InputStream
s:
- Caller is responsible for closing any
Reader
andInputStream
instances requested. That is, caller owns these accessor objects. - Source objects are only required to return a non-null object once: after this, if new non-null instances are returned, they must not be the same objects as returned earlier. Implementations can choose to construct new instances to the same backing data structure or resource; if so, they should document this behavior.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract InputStream
This method creates anInputStream
via which underlying input source can be accessed.abstract Reader
This method creates aReader
via which underlying input source can be accessed.abstract URL
void
setEncoding
(String enc) void
setPublicId
(String id) void
setSystemId
(String id)
-
Field Details
-
mSystemId
-
mPublicId
-
mEncoding
-
-
Constructor Details
-
Stax2Source
protected Stax2Source()
-
-
Method Details
-
getSystemId
- Specified by:
getSystemId
in interfaceSource
-
setSystemId
- Specified by:
setSystemId
in interfaceSource
-
getPublicId
-
setPublicId
-
getEncoding
-
setEncoding
-
getReference
- Returns:
- URL that can be used to resolve references originating from the content read via this source; may be null if not known (which is the case for most non-referential sources)
-
constructReader
This method creates aReader
via which underlying input source can be accessed. Note that caller is responsible for closing that Reader when it is done reading it.- Throws:
IOException
-
constructInputStream
This method creates anInputStream
via which underlying input source can be accessed. Note that caller is responsible for closing that InputSource when it is done reading it- Throws:
IOException
-