org.apache.cayenne.access.types
Class ByteType
java.lang.Object
org.apache.cayenne.access.types.AbstractType
org.apache.cayenne.access.types.ByteType
- All Implemented Interfaces:
- ExtendedType
public class ByteType
- extends AbstractType
Handles java.lang.Byte
type mapping. Can be configured to recast
java.lang.Byte to java.lang.Integer when binding values to PreparedStatement. This is a
workaround for bugs in certain drivers. Drivers that are proven to have issues with
byte values are Sybase and Oracle (Mac OS X only).
- Since:
- 1.0.3
- Author:
- Andrus Adamchik
Constructor Summary |
ByteType(boolean widenBytes)
|
Method Summary |
java.lang.String |
getClassName()
Returns a full name of Java class that this ExtendedType supports. |
java.lang.Object |
materializeObject(java.sql.CallableStatement st,
int index,
int type)
Reads an object from a stored procedure OUT parameter, converting it to class
returned by 'getClassName' method. |
java.lang.Object |
materializeObject(java.sql.ResultSet rs,
int index,
int type)
Reads an object from JDBC ResultSet column, converting it to class returned by
'getClassName' method. |
void |
setJdbcObject(java.sql.PreparedStatement st,
java.lang.Object val,
int pos,
int type,
int precision)
Calls "PreparedStatement.setObject(..)". |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
widenBytes
protected boolean widenBytes
ByteType
public ByteType(boolean widenBytes)
getClassName
public java.lang.String getClassName()
- Description copied from interface:
ExtendedType
- Returns a full name of Java class that this ExtendedType supports.
- Specified by:
getClassName
in interface ExtendedType
- Specified by:
getClassName
in class AbstractType
materializeObject
public java.lang.Object materializeObject(java.sql.ResultSet rs,
int index,
int type)
throws java.lang.Exception
- Description copied from interface:
ExtendedType
- Reads an object from JDBC ResultSet column, converting it to class returned by
'getClassName' method.
- Specified by:
materializeObject
in interface ExtendedType
- Specified by:
materializeObject
in class AbstractType
- Throws:
java.lang.Exception
- if read error ocurred, or an object can't be converted to a
target Java class.
materializeObject
public java.lang.Object materializeObject(java.sql.CallableStatement st,
int index,
int type)
throws java.lang.Exception
- Description copied from interface:
ExtendedType
- Reads an object from a stored procedure OUT parameter, converting it to class
returned by 'getClassName' method.
- Specified by:
materializeObject
in interface ExtendedType
- Specified by:
materializeObject
in class AbstractType
- Throws:
java.lang.Exception
- if read error ocurred, or an object can't be converted to a
target Java class.
setJdbcObject
public void setJdbcObject(java.sql.PreparedStatement st,
java.lang.Object val,
int pos,
int type,
int precision)
throws java.lang.Exception
- Description copied from class:
AbstractType
- Calls "PreparedStatement.setObject(..)". Some DbAdapters may need to override this
behavior for at least some of the object types, as it doesn't work consistently
across all JDBC drivers.
- Specified by:
setJdbcObject
in interface ExtendedType
- Overrides:
setJdbcObject
in class AbstractType
- Throws:
java.lang.Exception
Copyright © 2001-2006 Apache.org All Rights Reserved.