Package org.dbunit.dataset.datatype
Class BytesDataType
java.lang.Object
org.dbunit.dataset.datatype.DataType
org.dbunit.dataset.datatype.AbstractDataType
org.dbunit.dataset.datatype.BytesDataType
- Direct Known Subclasses:
BinaryStreamDataType,BlobDataType,PostgreSQLOidDataType,UuidAwareBytesDataType
DataType mapping a binary SQL column type to a Java byte[].- Since:
- 1.0 (Mar 20, 2002)
- Version:
- $Revision$ $Date$
- Author:
- Manuel Laflamme, Last changed by: $Author$
-
Field Summary
Fields inherited from class org.dbunit.dataset.datatype.DataType
BIGINT, BIGINT_AUX_LONG, BINARY, BIT, BLOB, BOOLEAN, CHAR, CLOB, DATE, DECIMAL, DOUBLE, FLOAT, INTEGER, LONGNVARCHAR, LONGVARBINARY, LONGVARCHAR, NCHAR, NUMERIC, NVARCHAR, REAL, RELATIVE_DATE_TIME_PARSER, SMALLINT, TIME, TIMESTAMP, TINYINT, UNKNOWN, VARBINARY, VARCHAR -
Constructor Summary
ConstructorsConstructorDescriptionBytesDataType(String name, int sqlType) Constructs a data type with the given SQL type mapping. -
Method Summary
Modifier and TypeMethodDescriptionintcompare(byte[] v1, byte[] v2) Lexicographically compares two byte arrays.protected intcompareNonNulls(Object value1, Object value2) Compares non-null values to each other.getSqlValue(int column, ResultSet resultSet) Returns the specified column value from the specified resultset object.byte[]Reads the entire contents of the given file into a byte array.byte[]Reads the entire contents at the given URL into a byte array.voidsetSqlValue(Object value, int column, PreparedStatement statement) Set the specified value to the specified prepared statement object.Casts the given value into a byte[] using different strategies.Methods inherited from class org.dbunit.dataset.datatype.AbstractDataType
areObjectsEqual, compare, getSqlType, getTypeClass, isDateTime, isNumber, loadClass, loadClass, toStringMethods inherited from class org.dbunit.dataset.datatype.DataType
asString, forObject, forSqlType, forSqlTypeName, getSqlTypeName, isExtendedSyntax
-
Constructor Details
-
BytesDataType
Constructs a data type with the given SQL type mapping.- Parameters:
name- the data type name.sqlType- theTypesconstant this data type maps to.
-
-
Method Details
-
loadFile
Reads the entire contents of the given file into a byte array.- Parameters:
filename- the path of the file to read.- Returns:
- the file's contents.
- Throws:
IOException- if the file cannot be read.
-
loadURL
Reads the entire contents at the given URL into a byte array.- Parameters:
urlAsString- the URL to read from.- Returns:
- the URL content.
- Throws:
IOException- if the URL cannot be read.
-
typeCast
Casts the given value into a byte[] using different strategies. Note that this might sometimes result in undesired behavior when character data (Strings) are used.- Specified by:
typeCastin classDataType- Parameters:
value- the value to typecast.- Returns:
- the typecast value.
- Throws:
TypeCastException- if the value cannot be typecast to thisDataType.- See Also:
-
compareNonNulls
Description copied from class:AbstractDataTypeCompares non-null values to each other. Both objects are guaranteed to be not null and to implement the interfaceComparable. The two given objects are the results of theDataType.typeCast(Object)method call which is usually implemented by a specializedDataTypeimplementation.- Overrides:
compareNonNullsin classAbstractDataType- Parameters:
value1- First value resulting from theDataType.typeCast(Object)method callvalue2- Second value resulting from theDataType.typeCast(Object)method call- Returns:
- The result of the
Comparable.compareTo(Object)invocation. - Throws:
TypeCastException- if either value cannot be cast to aComparable.
-
compare
Lexicographically compares two byte arrays.- Parameters:
v1- the first byte array.v2- the second byte array.- Returns:
- a negative, zero, or positive value if v1 is less than, equal to, or greater than v2, respectively.
- Throws:
TypeCastException- never thrown by this implementation.
-
getSqlValue
Description copied from class:DataTypeReturns the specified column value from the specified resultset object.- Overrides:
getSqlValuein classAbstractDataType- Parameters:
column- the column index to read, starting at 1.resultSet- the result set to read the column value from.- Returns:
- the column value.
- Throws:
SQLException- if a database access error occurs.TypeCastException- if the value cannot be typecast to thisDataType.
-
setSqlValue
public void setSqlValue(Object value, int column, PreparedStatement statement) throws SQLException, TypeCastException Description copied from class:DataTypeSet the specified value to the specified prepared statement object.- Overrides:
setSqlValuein classAbstractDataType- Parameters:
value- the value to bind.column- the parameter index to bind to, starting at 1.statement- the prepared statement to bind the value on.- Throws:
SQLException- if a database access error occurs.TypeCastException- if the value cannot be typecast to thisDataType.
-