|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface DataType
The type of a field (column) that can be stored in a Table
.
Responsible for testing
that a value is assignable to fields of this
type, for converting
Objects
to this type, and for
reading
values from and writing
values to a stream.
Nested Class Summary | |
---|---|
static interface |
DataType.BinaryRepresentation
Extension of DataType to indicate that the implementing class stores binary values, and as such returns precision as the number of bits used to represent a given value. |
static interface |
DataType.ExactNumeric
Extension of NonFixedPrecision to indicate that the scale of the implementing class is not fixed by the implementation, but rather can be declared by the user. |
static interface |
DataType.NonFixedPrecision
Extension of DataType to indicate that the precision of the implementing class is not fixed by the implementation, but rather can be declared by the user. |
Method Summary | |
---|---|
boolean |
accepts(Object value)
Return true if a field of my type can be assigned the given non-
null value , false otherwise. |
Object |
convert(Object value)
Converts an acceptable value to one of the appropriate type. |
int |
getColumnDisplaySize()
Value returned by ResultSetMetaData#getColumnDisplaySize for this data
type. |
int |
getJdbcType()
Returns the JDBC type code most closely matching this type. |
String |
getLiteralPrefix()
Prefix used to quote a literal to delimit value for this type when in SQL syntax or result display |
String |
getLiteralSuffix()
Suffix used to quote a literal to delimit value for this type when in SQL syntax or result display |
int |
getNullableCode()
Code indicating that type does not accept, does accept, or does not disclose acceptance of null values |
int |
getPrecision()
Value returned by ResultSetMetaData#getPrecision for this data type. |
int |
getPrecisionRadix()
Indicates radix used to compute maximum number of significant digits for this datatype, as returned by getPrecision() . |
String |
getPreferredValueClassName()
Returns the "normal" type returned by convert(java.lang.Object) . |
int |
getScale()
Value returned by ResultSetMetaData#getScale for this data type. |
short |
getSearchableCode()
Code indicating how much WHERE ... |
boolean |
isCaseSensitive()
For character and string-related types, indicates whether type acknowledges case when storing and retrieving values |
boolean |
isCurrency()
|
boolean |
isUnsigned()
For numeric types, indicates whether type stores only non-negative (>= 0) values |
DataType |
makeNewInstance()
Creates a new instance of this DataType implementation. |
Object |
read(DataInput in)
Instantiate an object of my type from the given DataInput . |
Object |
successor(Object value)
Returns the successor for the given value. |
boolean |
supportsSuccessor()
Returns true if the successor(java.lang.Object) method is supported, false
otherwise. |
BigDecimal |
toBigDecimal(Object value)
Convert the given non- null value to a
BigDecimal , or throw a AxionException . |
BigInteger |
toBigInteger(Object value)
Convert the given non- null value to a
BigInteger , or throw a AxionException . |
Blob |
toBlob(Object value)
Convert the given non- null value to a Blob , or
throw a AxionException . |
boolean |
toBoolean(Object value)
Convert the given non- null value to a boolean ,
or throw a SQLException . |
byte |
toByte(Object value)
Convert the given non- null value to a byte ,
or throw a SQLException . |
byte[] |
toByteArray(Object value)
Convert the given non- null value to a byte[] ,
or throw a AxionException . |
Clob |
toClob(Object value)
Convert the given non- null value to a Clob , or
throw a AxionException . |
Date |
toDate(Object value)
Convert the given non- null value to a Date ,
or throw a SQLException . |
double |
toDouble(Object value)
Convert the given non- null value to a double ,
or throw a AxionException . |
float |
toFloat(Object value)
Convert the given non- null value to a float ,
or throw a AxionException . |
int |
toInt(Object value)
Convert the given non- null value to a int ,
or throw a AxionException . |
long |
toLong(Object value)
Convert the given non- null value to a long ,
or throw a AxionException . |
short |
toShort(Object value)
Convert the given non- null value to a short ,
or throw a AxionException . |
String |
toString(Object value)
Convert the given non- null value to a String , or
throw a AxionException . |
Time |
toTime(Object value)
Convert the given non- null value to a Time , or
throw a AxionException . |
Timestamp |
toTimestamp(Object value)
Convert the given non- null value to a Timestamp ,
or throw a AxionException . |
URL |
toURL(Object value)
Convert the given non- null value to a URL , or
throw a AxionException . |
void |
write(Object value,
DataOutput out)
Write an object of my type to the given DataOutput . |
Methods inherited from interface java.util.Comparator |
---|
compare, equals |
Method Detail |
---|
boolean accepts(Object value)
true
if a field of my type can be assigned the given non-
null
value , false
otherwise.
value
- non- null
valueObject convert(Object value) throws AxionException
acceptable
value to one of the appropriate type.
AxionException
int getColumnDisplaySize()
ResultSetMetaData#getColumnDisplaySize
for this data
type.
ResultSetMetaData.getColumnDisplaySize(int)
int getJdbcType()
type code
most closely matching this type.
String getLiteralPrefix()
DatabaseMetaData.getTypeInfo()
String getLiteralSuffix()
DatabaseMetaData.getTypeInfo()
int getNullableCode()
null
values
DatabaseMetaData.getTypeInfo()
int getPrecision()
ResultSetMetaData#getPrecision
for this data type.
ResultSetMetaData.getPrecision(int)
int getPrecisionRadix()
getPrecision()
.
getPrecision()
, typically 2 or 10.String getPreferredValueClassName()
convert(java.lang.Object)
. Returns
java.lang.Object if unknown.
ResultSetMetaData.getColumnClassName(int)
int getScale()
ResultSetMetaData#getScale
for this data type.
ResultSetMetaData.getScale(int)
short getSearchableCode()
WHERE ... LIKE
support is available across
a column of this type
DatabaseMetaData.getTypeInfo()
boolean isCaseSensitive()
DatabaseMetaData.getTypeInfo()
,
ResultSetMetaData.isCaseSensitive(int)
boolean isCurrency()
ResultSetMetaData.isCurrency(int)
boolean isUnsigned()
DatabaseMetaData.getTypeInfo()
Object read(DataInput in) throws IOException
DataInput
. The next
sequence of bytes to be read from the DataInput
will have been
written by write(java.lang.Object, java.io.DataOutput)
.
IOException
Object successor(Object value) throws UnsupportedOperationException
UnsupportedOperationException
boolean supportsSuccessor()
true
if the successor(java.lang.Object)
method is supported, false
otherwise.
BigDecimal toBigDecimal(Object value) throws AxionException
null
value to a
BigDecimal
, or throw a AxionException
.
AxionException
ResultSet.getBigDecimal(int, int)
BigInteger toBigInteger(Object value) throws AxionException
null
value to a
BigInteger
, or throw a AxionException
.
AxionException
java.sql.ResultSet#getBigInteger
Blob toBlob(Object value) throws AxionException
null
value to a Blob
, or
throw a AxionException
.
AxionException
ResultSet.getBlob(int)
boolean toBoolean(Object value) throws AxionException
null
value to a boolean
,
or throw a SQLException
.
AxionException
ResultSet.getBoolean(int)
byte toByte(Object value) throws AxionException
null
value to a byte
,
or throw a SQLException
.
AxionException
ResultSet.getByte(int)
byte[] toByteArray(Object value) throws AxionException
null
value to a byte[]
,
or throw a AxionException
.
AxionException
ResultSet.getBytes(int)
Clob toClob(Object value) throws AxionException
null
value to a Clob
, or
throw a AxionException
.
AxionException
ResultSet.getClob(int)
Date toDate(Object value) throws AxionException
null
value to a Date
,
or throw a SQLException
.
AxionException
ResultSet.getDate(int)
double toDouble(Object value) throws AxionException
null
value to a double
,
or throw a AxionException
.
AxionException
ResultSet.getDouble(int)
float toFloat(Object value) throws AxionException
null
value to a float
,
or throw a AxionException
.
AxionException
ResultSet.getFloat(int)
int toInt(Object value) throws AxionException
null
value to a int
,
or throw a AxionException
.
AxionException
ResultSet.getInt(int)
long toLong(Object value) throws AxionException
null
value to a long
,
or throw a AxionException
.
AxionException
ResultSet.getLong(int)
short toShort(Object value) throws AxionException
null
value to a short
,
or throw a AxionException
.
AxionException
ResultSet.getShort(int)
String toString(Object value) throws AxionException
null
value to a String
, or
throw a AxionException
.
AxionException
ResultSet.getString(int)
Time toTime(Object value) throws AxionException
null
value to a Time
, or
throw a AxionException
.
AxionException
ResultSet.getTime(int)
Timestamp toTimestamp(Object value) throws AxionException
null
value to a Timestamp
,
or throw a AxionException
.
AxionException
ResultSet.getTimestamp(int)
URL toURL(Object value) throws AxionException
null
value to a URL
, or
throw a AxionException
.
AxionException
ResultSet.getURL(int)
void write(Object value, DataOutput out) throws IOException
DataOutput
.
value
- the value to write, which must be acceptable
to this
DataType
IOException
DataType makeNewInstance()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |