org.apache.xerces.dom
Class DOMInputImpl
public
class
DOMInputImpl
extends Object
implements LSInput
This Class
DOMInputImpl
represents a single input source for an XML entity.
This Class allows an application to encapsulate information about
an input source in a single object, which may include a public
identifier, a system identifier, a byte stream (possibly with a specified
encoding), and/or a character stream.
The exact definitions of a byte stream and a character stream are
binding dependent.
There are two places that the application will deliver this input
source to the parser: as the argument to the parse
method,
or as the return value of the DOMResourceResolver.resolveEntity
method.
The DOMParser
will use the LSInput
object to determine how to read XML input. If there is a character stream
available, the parser will read that stream directly; if not, the parser
will use a byte stream, if available; if neither a character stream nor a
byte stream is available, the parser will attempt to open a URI
connection to the resource identified by the system identifier.
An LSInput
object belongs to the application: the
parser shall never modify it in any way (it may modify a copy if
necessary). Eventhough all attributes in this interface are writable the
DOM implementation is expected to never mutate a LSInput.
See also the Document Object Model (DOM) Level 3 Abstract Schemas and Load
and Save Specification.
Version: $Id: DOMInputImpl.java,v 1.4 2004/10/05 17:12:50 mrglavas Exp $
Author: Gopal Sharma, SUN Microsystems Inc.
UNKNOWN:
Constructor Summary |
| DOMInputImpl()
Default Constructor, constructs an input source
|
| DOMInputImpl(String publicId, String systemId, String baseSystemId)
Constructs an input source from just the public and system
identifiers, leaving resolution of the entity and opening of
the input stream up to the caller.
|
| DOMInputImpl(String publicId, String systemId, String baseSystemId, InputStream byteStream, String encoding)
Constructs an input source from a byte stream.
|
| DOMInputImpl(String publicId, String systemId, String baseSystemId, Reader charStream, String encoding)
Constructs an input source from a character stream.
|
| DOMInputImpl(String publicId, String systemId, String baseSystemId, String data, String encoding)
Constructs an input source from a String.
|
Method Summary |
String | getBaseURI()
The base URI to be used (see section 5.1.4 in ) for resolving relative
URIs to absolute URIs. |
InputStream | getByteStream()
An attribute of a language-binding dependent type that represents a
stream of bytes.
|
boolean | getCertifiedText()
If set to true, assume that the input is certified (see section 2.13
in [ XML 1.1]) when
parsing [ XML 1.1]. |
Reader | getCharacterStream()
An attribute of a language-binding dependent type that represents a
stream of 16-bit units. |
String | getEncoding()
The character encoding, if known. |
String | getPublicId()
The public identifier for this input source. |
String | getStringData()
A string attribute that represents a sequence of 16 bit units (utf-16
encoded characters).
|
String | getSystemId()
The system identifier, a URI reference , for this input source. |
void | setBaseURI(String baseURI)
The base URI to be used (see section 5.1.4 in ) for resolving relative
URIs to absolute URIs. |
void | setByteStream(InputStream byteStream)
An attribute of a language-binding dependent type that represents a
stream of bytes.
|
void | setCertifiedText(boolean certifiedText)
If set to true, assume that the input is certified (see section 2.13
in [ XML 1.1]) when
parsing [ XML 1.1]. |
void | setCharacterStream(Reader characterStream)
An attribute of a language-binding dependent type that represents a
stream of 16-bit units. |
void | setEncoding(String encoding)
The character encoding, if known. |
void | setPublicId(String publicId)
The public identifier for this input source. |
void | setStringData(String stringData)
A string attribute that represents a sequence of 16 bit units (utf-16
encoded characters).
|
void | setSystemId(String systemId)
The system identifier, a URI reference , for this input source. |
protected String fBaseSystemId
protected InputStream fByteStream
protected boolean fCertifiedText
protected Reader fCharStream
protected String fData
protected String fEncoding
protected String fPublicId
protected String fSystemId
public DOMInputImpl()
Default Constructor, constructs an input source
public DOMInputImpl(String publicId, String systemId, String baseSystemId)
Constructs an input source from just the public and system
identifiers, leaving resolution of the entity and opening of
the input stream up to the caller.
Parameters: publicId The public identifier, if known. systemId The system identifier. This value should
always be set, if possible, and can be
relative or absolute. If the system identifier
is relative, then the base system identifier
should be set. baseSystemId The base system identifier. This value should
always be set to the fully expanded URI of the
base system identifier, if possible.
public DOMInputImpl(String publicId, String systemId, String baseSystemId, InputStream byteStream, String encoding)
Constructs an input source from a byte stream.
Parameters: publicId The public identifier, if known. systemId The system identifier. This value should
always be set, if possible, and can be
relative or absolute. If the system identifier
is relative, then the base system identifier
should be set. baseSystemId The base system identifier. This value should
always be set to the fully expanded URI of the
base system identifier, if possible. byteStream The byte stream. encoding The encoding of the byte stream, if known.
public DOMInputImpl(String publicId, String systemId, String baseSystemId, Reader charStream, String encoding)
Constructs an input source from a character stream.
Parameters: publicId The public identifier, if known. systemId The system identifier. This value should
always be set, if possible, and can be
relative or absolute. If the system identifier
is relative, then the base system identifier
should be set. baseSystemId The base system identifier. This value should
always be set to the fully expanded URI of the
base system identifier, if possible. charStream The character stream. encoding The original encoding of the byte stream
used by the reader, if known.
public DOMInputImpl(String publicId, String systemId, String baseSystemId, String data, String encoding)
Constructs an input source from a String.
Parameters: publicId The public identifier, if known. systemId The system identifier. This value should
always be set, if possible, and can be
relative or absolute. If the system identifier
is relative, then the base system identifier
should be set. baseSystemId The base system identifier. This value should
always be set to the fully expanded URI of the
base system identifier, if possible. data The String Data. encoding The original encoding of the byte stream
used by the reader, if known.
public String getBaseURI()
The base URI to be used (see section 5.1.4 in ) for resolving relative
URIs to absolute URIs. If the baseURI is itself a relative URI, the
behavior is implementation dependent.
public InputStream getByteStream()
An attribute of a language-binding dependent type that represents a
stream of bytes.
The parser will ignore this if there is also a character stream
specified, but it will use a byte stream in preference to opening a
URI connection itself.
If the application knows the character encoding of the byte stream,
it should set the encoding property. Setting the encoding in this way
will override any encoding specified in the XML declaration itself.
public boolean getCertifiedText()
If set to true, assume that the input is certified (see section 2.13
in [
XML 1.1]) when
parsing [
XML 1.1].
public Reader getCharacterStream()
An attribute of a language-binding dependent type that represents a
stream of 16-bit units. Application must encode the stream using
UTF-16 (defined in and Amendment 1 of ).
If a character stream is specified, the parser will ignore any byte
stream and will not attempt to open a URI connection to the system
identifier.
public String getEncoding()
The character encoding, if known. The encoding must be a string
acceptable for an XML encoding declaration ( section 4.3.3 "Character
Encoding in Entities").
This attribute has no effect when the application provides a
character stream. For other sources of input, an encoding specified
by means of this attribute will override any encoding specified in
the XML claration or the Text Declaration, or an encoding obtained
from a higher level protocol, such as HTTP .
public String getPublicId()
The public identifier for this input source. The public identifier is
always optional: if the application writer includes one, it will be
provided as part of the location information.
public String getStringData()
A string attribute that represents a sequence of 16 bit units (utf-16
encoded characters).
If string data is available in the input source, the parser will
ignore the character stream and the byte stream and will not attempt
to open a URI connection to the system identifier.
public String getSystemId()
The system identifier, a URI reference , for this input 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 fetch the
ressource identifier by the URI reference only if there is no byte
stream or character stream specified).
If the application knows the character encoding of the object
pointed to by the system identifier, it can register the encoding by
setting the encoding attribute.
If the system ID is a relative URI reference (see section 5 in ),
the behavior is implementation dependent.
public void setBaseURI(String baseURI)
The base URI to be used (see section 5.1.4 in ) for resolving relative
URIs to absolute URIs. If the baseURI is itself a relative URI, the
behavior is implementation dependent.
public void setByteStream(InputStream byteStream)
An attribute of a language-binding dependent type that represents a
stream of bytes.
The parser will ignore this if there is also a character stream
specified, but it will use a byte stream in preference to opening a
URI connection itself.
If the application knows the character encoding of the byte stream,
it should set the encoding property. Setting the encoding in this way
will override any encoding specified in the XML declaration itself.
public void setCertifiedText(boolean certifiedText)
If set to true, assume that the input is certified (see section 2.13
in [
XML 1.1]) when
parsing [
XML 1.1].
public void setCharacterStream(Reader characterStream)
An attribute of a language-binding dependent type that represents a
stream of 16-bit units. Application must encode the stream using
UTF-16 (defined in and Amendment 1 of ).
If a character stream is specified, the parser will ignore any byte
stream and will not attempt to open a URI connection to the system
identifier.
public void setEncoding(String encoding)
The character encoding, if known. The encoding must be a string
acceptable for an XML encoding declaration ( section 4.3.3 "Character
Encoding in Entities").
This attribute has no effect when the application provides a
character stream. For other sources of input, an encoding specified
by means of this attribute will override any encoding specified in
the XML claration or the Text Declaration, or an encoding obtained
from a higher level protocol, such as HTTP .
public void setPublicId(String publicId)
The public identifier for this input source. The public identifier is
always optional: if the application writer includes one, it will be
provided as part of the location information.
public void setStringData(String stringData)
A string attribute that represents a sequence of 16 bit units (utf-16
encoded characters).
If string data is available in the input source, the parser will
ignore the character stream and the byte stream and will not attempt
to open a URI connection to the system identifier.
public void setSystemId(String systemId)
The system identifier, a URI reference , for this input 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 fetch the
ressource identifier by the URI reference only if there is no byte
stream or character stream specified).
If the application knows the character encoding of the object
pointed to by the system identifier, it can register the encoding by
setting the encoding attribute.
If the system ID is a relative URI reference (see section 5 in ),
the behavior is implementation dependent.
Copyright © 1999-2005 Apache XML Project. All Rights Reserved.