|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javax.sql.rowset.serial.SQLInputImpl
An input stream used for custom mapping user-defined types (UDTs).
An SQLInputImpl
object is an input stream that contains a
stream of values that are the attributes of a UDT.
This class is used by the driver behind the scenes when the method
getObject
is called on an SQL structured or distinct type
that has a custom mapping; a programmer never invokes
SQLInputImpl
methods directly. They are provided here as a
convenience for those who write RowSet
implementations.
The SQLInputImpl
class provides a set of
reader methods analogous to the ResultSet
getter
methods. These methods make it possible to read the values in an
SQLInputImpl
object.
The method wasNull
is used to determine whether the
the last value read was SQL NULL
.
When the method getObject
is called with an
object of a class implementing the interface SQLData
,
the JDBC driver calls the method SQLData.getSQLType
to determine the SQL type of the UDT being custom mapped. The driver
creates an instance of SQLInputImpl
, populating it with the
attributes of the UDT. The driver then passes the input
stream to the method SQLData.readSQL
, which in turn
calls the SQLInputImpl
reader methods
to read the attributes from the input stream.
SQLData
Constructor Summary | |
SQLInputImpl(java.lang.Object[] attributes,
java.util.Map map)
Creates an SQLInputImpl object initialized with the
given array of attributes and the given type map. |
Method Summary | |
java.sql.Array |
readArray()
Reads an SQL ARRAY value from the stream and
returns it as an Array object in the Java programming
language. |
java.io.InputStream |
readAsciiStream()
Returns the next attribute in this SQLInputImpl object
as a stream of ASCII characters. |
java.math.BigDecimal |
readBigDecimal()
Retrieves the next attribute in this SQLInputImpl object
as a java.math.BigDecimal . |
java.io.InputStream |
readBinaryStream()
Returns the next attribute in this SQLInputImpl object
as a stream of uninterpreted bytes. |
java.sql.Blob |
readBlob()
Retrieves the BLOB value at the head of this
SQLInputImpl object as a Blob object
in the Java programming language. |
boolean |
readBoolean()
Retrieves the next attribute in this SQLInputImpl object as
a boolean in the Java programming language. |
byte |
readByte()
Retrieves the next attribute in this SQLInputImpl object as
a byte in the Java programming language. |
byte[] |
readBytes()
Retrieves the next attribute in this SQLInputImpl object
as an array of bytes. |
java.io.Reader |
readCharacterStream()
Retrieves the next attribute in this SQLInputImpl object
as a stream of Unicode characters. |
java.sql.Clob |
readClob()
Retrieves the CLOB value at the head of this
SQLInputImpl object as a Clob object
in the Java programming language. |
java.sql.Date |
readDate()
Retrieves the next attribute in this SQLInputImpl as
a java.sql.Date object. |
double |
readDouble()
Retrieves the next attribute in this SQLInputImpl object
as a double in the Java programming language. |
float |
readFloat()
Retrieves the next attribute in this SQLInputImpl object
as a float in the Java programming language. |
int |
readInt()
Retrieves the next attribute in this SQLInputImpl object
as an int in the Java programming language. |
long |
readLong()
Retrieves the next attribute in this SQLInputImpl object
as a long in the Java programming language. |
java.lang.Object |
readObject()
Retrieves the value at the head of this SQLInputImpl
object as an Object in the Java programming language. |
java.sql.Ref |
readRef()
Retrieves the value at the head of this SQLInputImpl object
as a Ref object in the Java programming language. |
short |
readShort()
Retrieves the next attribute in this SQLInputImpl object
as a short in the Java programming language. |
java.lang.String |
readString()
Retrieves the next attribute in this SQLInputImpl object as
a String in the Java programming language. |
java.sql.Time |
readTime()
Retrieves the next attribute in this SQLInputImpl object as
a java.sql.Time object. |
java.sql.Timestamp |
readTimestamp()
Retrieves the next attribute in this SQLInputImpl object as
a java.sql.Timestamp object. |
java.net.URL |
readURL()
Reads an SQL DATALINK value from the stream and
returns it as an URL object in the Java programming
language. |
boolean |
wasNull()
Ascertains whether the last value read from this SQLInputImpl object was null . |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public SQLInputImpl(java.lang.Object[] attributes, java.util.Map map) throws java.sql.SQLException
SQLInputImpl
object initialized with the
given array of attributes and the given type map. If any of the
attributes is a UDT whose name is in an entry in the type map,
the attribute will be mapped according to the corresponding
SQLData
implementation.
attributes
- an array of Object
instances in which
each element is an attribute of a UDT. The order of the
attributes in the array is the same order in which
the attributes were defined in the UDT definition.map
- a java.util.Map
object containing zero or more
entries, with each entry consisting of 1) a String
giving the fully
qualified name of the UDT and 2) the Class
object
for the SQLData
implementation that defines how
the UDT is to be mapped
java.sql.SQLException
- if the attributes
or the map
is a null
valueMethod Detail |
public java.lang.String readString() throws java.sql.SQLException
SQLInputImpl
object as
a String
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readString
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no further values in the stream.public boolean readBoolean() throws java.sql.SQLException
SQLInputImpl
object as
a boolean
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readBoolean
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no further values in the stream.public byte readByte() throws java.sql.SQLException
SQLInputImpl
object as
a byte
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readByte
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no further values in the streampublic short readShort() throws java.sql.SQLException
SQLInputImpl
object
as a short
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readShort
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no more values in the streampublic int readInt() throws java.sql.SQLException
SQLInputImpl
object
as an int
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readInt
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no more values in the streampublic long readLong() throws java.sql.SQLException
SQLInputImpl
object
as a long
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readLong
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no more values in the streampublic float readFloat() throws java.sql.SQLException
SQLInputImpl
object
as a float
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readFloat
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no more values in the streampublic double readDouble() throws java.sql.SQLException
SQLInputImpl
object
as a double
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readDouble
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no more values in the streampublic java.math.BigDecimal readBigDecimal() throws java.sql.SQLException
SQLInputImpl
object
as a java.math.BigDecimal
.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readBigDecimal
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no more values in the streampublic byte[] readBytes() throws java.sql.SQLException
SQLInputImpl
object
as an array of bytes.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readBytes
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no more values in the streampublic java.sql.Date readDate() throws java.sql.SQLException
SQLInputImpl
as
a java.sql.Date
object.
This method does not perform type-safe checking to determine if the
returned type is the expected type; this responsibility is delegated
to the UDT mapping as defined by a SQLData
implementation.
readDate
in interface java.sql.SQLInput
SQLInputImpl
object;
if the value is SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position or if there are no more values in the streampublic java.sql.Time readTime() throws java.sql.SQLException
SQLInputImpl
object as
a java.sql.Time
object.
This method does not perform type-safe checking to determine if the
returned type is the expected type as this responsibility is delegated
to the UDT mapping as implemented by a SQLData
implementation.
readTime
in interface java.sql.SQLInput
SQL NULL
, return
null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public java.sql.Timestamp readTimestamp() throws java.sql.SQLException
SQLInputImpl
object as
a java.sql.Timestamp
object.
readTimestamp
in interface java.sql.SQLInput
SQL NULL
, return
null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public java.io.Reader readCharacterStream() throws java.sql.SQLException
SQLInputImpl
object
as a stream of Unicode characters.
This method does not perform type-safe checking to determine if the
returned type is the expected type as this responsibility is delegated
to the UDT mapping as implemented by a SQLData
implementation.
readCharacterStream
in interface java.sql.SQLInput
SQL NULL
, return null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public java.io.InputStream readAsciiStream() throws java.sql.SQLException
SQLInputImpl
object
as a stream of ASCII characters.
This method does not perform type-safe checking to determine if the
returned type is the expected type as this responsibility is delegated
to the UDT mapping as implemented by a SQLData
implementation.
readAsciiStream
in interface java.sql.SQLInput
SQL NULL
,
return null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public java.io.InputStream readBinaryStream() throws java.sql.SQLException
SQLInputImpl
object
as a stream of uninterpreted bytes.
This method does not perform type-safe checking to determine if the
returned type is the expected type as this responsibility is delegated
to the UDT mapping as implemented by a SQLData
implementation.
readBinaryStream
in interface java.sql.SQLInput
SQL NULL
, return
null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public java.lang.Object readObject() throws java.sql.SQLException
SQLInputImpl
object as an Object
in the Java programming language. The
actual type of the object returned is determined by the default
mapping of SQL types to types in the Java programming language unless
there is a custom mapping, in which case the type of the object
returned is determined by this stream's type map.
The JDBC technology-enabled driver registers a type map with the stream before passing the stream to the application.
When the datum at the head of the stream is an SQL NULL
,
this method returns null
. If the datum is an SQL
structured or distinct type with a custom mapping, this method
determines the SQL type of the datum at the head of the stream,
constructs an object of the appropriate class, and calls the method
SQLData.readSQL
on that object. The readSQL
method then calls the appropriate SQLInputImpl.readXXX
methods to retrieve the attribute values from the stream.
readObject
in interface java.sql.SQLInput
Object
in the Java programming language; null
if
the value is SQL NULL
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public java.sql.Ref readRef() throws java.sql.SQLException
SQLInputImpl
object
as a Ref
object in the Java programming language.
readRef
in interface java.sql.SQLInput
Ref
object representing the SQL
REF
value at the head of the stream; if the value
is SQL NULL
return null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public java.sql.Blob readBlob() throws java.sql.SQLException
BLOB
value at the head of this
SQLInputImpl
object as a Blob
object
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type as this responsibility is delegated
to the UDT mapping as implemented by a SQLData
implementation.
readBlob
in interface java.sql.SQLInput
Blob
object representing the SQL
BLOB
value at the head of this stream;
if the value is SQL NULL
, return
null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public java.sql.Clob readClob() throws java.sql.SQLException
CLOB
value at the head of this
SQLInputImpl
object as a Clob
object
in the Java programming language.
This method does not perform type-safe checking to determine if the
returned type is the expected type as this responsibility is delegated
to the UDT mapping as implemented by a SQLData
implementation.
readClob
in interface java.sql.SQLInput
Clob
object representing the SQL
CLOB
value at the head of the stream;
if the value is SQL NULL
, return
null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public java.sql.Array readArray() throws java.sql.SQLException
ARRAY
value from the stream and
returns it as an Array
object in the Java programming
language.
This method does not perform type-safe checking to determine if the
returned type is the expected type as this responsibility is delegated
to the UDT mapping as implemented by a SQLData
implementation.
readArray
in interface java.sql.SQLInput
Array
object representing the SQL
ARRAY
value at the head of the stream; *
if the value is SQL NULL
, return
null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.public boolean wasNull() throws java.sql.SQLException
SQLInputImpl
object was null
.
wasNull
in interface java.sql.SQLInput
true
if the SQL value read most recently was
null
; otherwise, false
; by default it
will return false
java.sql.SQLException
- if an error occurs determining the last value
read was a null
value or not;public java.net.URL readURL() throws java.sql.SQLException
DATALINK
value from the stream and
returns it as an URL
object in the Java programming
language.
This method does not perform type-safe checking to determine if the
returned type is the expected type as this responsibility is delegated
to the UDT mapping as implemented by a SQLData
implementation.
readURL
in interface java.sql.SQLInput
URL
object representing the SQL
DATALINK
value at the head of the stream; *
if the value is SQL NULL
, return
null
java.sql.SQLException
- if the read position is located at an invalid
position; or if there are no further values in the stream.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |