to top
Android APIs
public class

StreamSource

extends Object
implements Source
java.lang.Object
   ↳ javax.xml.transform.stream.StreamSource

Class Overview

Acts as an holder for a transformation Source in the form of a stream of XML markup.

Note: Due to their internal use of either a Reader or InputStream instance, StreamSource instances may only be used once.

Summary

Constants
String FEATURE If getFeature(String) returns true when passed this value as an argument, the Transformer supports Source input of this type.
Public Constructors
StreamSource()

Zero-argument default constructor.

StreamSource(InputStream inputStream)
Construct a StreamSource from a byte stream.
StreamSource(InputStream inputStream, String systemId)
Construct a StreamSource from a byte stream.
StreamSource(Reader reader)
Construct a StreamSource from a character reader.
StreamSource(Reader reader, String systemId)
Construct a StreamSource from a character reader.
StreamSource(String systemId)
Construct a StreamSource from a URL.
StreamSource(File f)
Construct a StreamSource from a File.
Public Methods
InputStream getInputStream()
Get the byte stream that was set with setByteStream.
String getPublicId()
Get the public identifier that was set with setPublicId.
Reader getReader()
Get the character stream that was set with setReader.
String getSystemId()
Get the system identifier that was set with setSystemId.
void setInputStream(InputStream inputStream)
Set the byte stream to be used as input.
void setPublicId(String publicId)
Set the public identifier for this Source.
void setReader(Reader reader)
Set the input to be a character reader.
void setSystemId(File f)
Set the system ID from a File reference.
void setSystemId(String systemId)
Set the system identifier for this Source.
[Expand]
Inherited Methods
From class java.lang.Object
From interface javax.xml.transform.Source

Constants

public static final String FEATURE

Since: API Level 8

If getFeature(String) returns true when passed this value as an argument, the Transformer supports Source input of this type.

Constant Value: "http://javax.xml.transform.stream.StreamSource/feature"

Public Constructors

public StreamSource ()

Since: API Level 8

Zero-argument default constructor. If this constructor is used, and no Stream source is set using setInputStream(java.io.InputStream) or setReader(java.io.Reader), then the Transformer will create an empty source InputStream using new InputStream().

public StreamSource (InputStream inputStream)

Since: API Level 8

Construct a StreamSource from a byte stream. Normally, a stream should be used rather than a reader, so the XML parser can resolve character encoding specified by the XML declaration.

If this constructor is used to process a stylesheet, normally setSystemId should also be called, so that relative URI references can be resolved.

Parameters
inputStream A valid InputStream reference to an XML stream.

public StreamSource (InputStream inputStream, String systemId)

Since: API Level 8

Construct a StreamSource from a byte stream. Normally, a stream should be used rather than a reader, so that the XML parser can resolve character encoding specified by the XML declaration.

This constructor allows the systemID to be set in addition to the input stream, which allows relative URIs to be processed.

Parameters
inputStream A valid InputStream reference to an XML stream.
systemId Must be a String that conforms to the URI syntax.

public StreamSource (Reader reader)

Since: API Level 8

Construct a StreamSource from a character reader. Normally, a stream should be used rather than a reader, so that the XML parser can resolve character encoding specified by the XML declaration. However, in many cases the encoding of the input stream is already resolved, as in the case of reading XML from a StringReader.

Parameters
reader A valid Reader reference to an XML character stream.

public StreamSource (Reader reader, String systemId)

Since: API Level 8

Construct a StreamSource from a character reader. Normally, a stream should be used rather than a reader, so that the XML parser may resolve character encoding specified by the XML declaration. However, in many cases the encoding of the input stream is already resolved, as in the case of reading XML from a StringReader.

Parameters
reader A valid Reader reference to an XML character stream.
systemId Must be a String that conforms to the URI syntax.

public StreamSource (String systemId)

Since: API Level 8

Construct a StreamSource from a URL.

Parameters
systemId Must be a String that conforms to the URI syntax.

public StreamSource (File f)

Since: API Level 8

Construct a StreamSource from a File.

Parameters
f Must a non-null File reference.

Public Methods

public InputStream getInputStream ()

Since: API Level 8

Get the byte stream that was set with setByteStream.

Returns
  • The byte stream that was set with setByteStream, or null if setByteStream or the ByteStream constructor was not called.

public String getPublicId ()

Since: API Level 8

Get the public identifier that was set with setPublicId.

Returns
  • The public identifier that was set with setPublicId, or null if setPublicId was not called.

public Reader getReader ()

Since: API Level 8

Get the character stream that was set with setReader.

Returns
  • The character stream that was set with setReader, or null if setReader or the Reader constructor was not called.

public String getSystemId ()

Since: API Level 8

Get the system identifier that was set with setSystemId.

Returns
  • The system identifier that was set with setSystemId, or null if setSystemId was not called.

public void setInputStream (InputStream inputStream)

Since: API Level 8

Set the byte stream to be used as input. Normally, a stream should be used rather than a reader, so that the XML parser can resolve character encoding specified by the XML declaration.

If this Source object is used to process a stylesheet, normally setSystemId should also be called, so that relative URL references can be resolved.

Parameters
inputStream A valid InputStream reference to an XML stream.

public void setPublicId (String publicId)

Since: API Level 8

Set the public identifier for this Source.

The public identifier is always optional: if the application writer includes one, it will be provided as part of the location information.

Parameters
publicId The public identifier as a string.

public void setReader (Reader reader)

Since: API Level 8

Set the input to be a character reader. Normally, a stream should be used rather than a reader, so that the XML parser can resolve character encoding specified by the XML declaration. However, in many cases the encoding of the input stream is already resolved, as in the case of reading XML from a StringReader.

Parameters
reader A valid Reader reference to an XML CharacterStream.

public void setSystemId (File f)

Since: API Level 8

Set the system ID from a File reference.

Parameters
f Must a non-null File reference.

public void setSystemId (String systemId)

Since: API Level 8

Set the system identifier for this Source.

The system identifier is optional if there is a byte stream or a character stream, but it is still useful to provide one, since the application can use it to resolve relative URIs and can include it in error messages and warnings (the parser will attempt to open a connection to the URI only if there is no byte stream or character stream specified).

Parameters
systemId The system identifier as a URL string.