@Override public ColumnType getExpectedColumnType(ColumnType type) { if (type.isNumber()) { return type; } return ColumnType.NUMBER; }
@Override public ColumnType getExpectedColumnType(ColumnType type) { if (type.isNumber()) { return type; } return ColumnType.NUMBER; }
private static boolean isNumber(ColumnType columnType, Object operand) { if (columnType == null) { return operand instanceof Number; } return columnType.isNumber(); }
private static boolean isNumber(ColumnType columnType, Object operand) { if (columnType == null) { return operand instanceof Number; } return columnType.isNumber(); }
@Override public boolean isNumber() { return _delegate.isNumber(); }
@Override public boolean isNumber() { return _delegate.isNumber(); }
public static ScalarAttributeType toAttributeType(ColumnType type) { if (type == null) { return ScalarAttributeType.S; } if (type.isBinary()) { return ScalarAttributeType.B; } if (type.isNumber()) { return ScalarAttributeType.S; } // default to string return ScalarAttributeType.S; }
if (allStrings && !type.isLiteral()) { allStrings = false; } else if (allNumbers && !type.isNumber()) { allNumbers = false;
if (allStrings && !type.isLiteral()) { allStrings = false; } else if (allNumbers && !type.isNumber()) { allNumbers = false;
static Object convertType(final Object value, final Column targetColumn) throws IllegalArgumentException { if (value == null) { return null; } Object result = value; final ColumnType type = targetColumn.getType(); if (type.isLiteral()) { // for strings, only convert some simple cases, since JDBC drivers // typically also do a decent job here (with eg. Clob types, char[] // types etc.) if (value instanceof Number || value instanceof Date) { result = value.toString(); } } else if (type.isNumber()) { final Number numberValue = ConvertToNumberTransformer.transformValue(value); if (numberValue == null && !"".equals(value)) { throw new IllegalArgumentException("Could not convert " + value + " to number"); } result = numberValue; } else if (type == ColumnType.BOOLEAN) { final Boolean booleanValue = ConvertToBooleanTransformer.transformValue(value); if (booleanValue == null && !"".equals(value)) { throw new IllegalArgumentException("Could not convert " + value + " to boolean"); } result = booleanValue; } return result; }
return BooleanComparator.toBoolean(value); if (columnType.isNumber()) { return NumberComparator.toNumber(value);
return BooleanComparator.toBoolean(value); if (columnType.isNumber()) { return NumberComparator.toNumber(value);
/** * Gets the size (in bytes) of a column with a specific {@link ColumnType} * and size */ private int getSize(ColumnType type, int columnSize) { final int baseSize; if (type.isBinary()) { baseSize = 1; } else if (type.isBoolean()) { baseSize = 1; } else if (type.isLiteral()) { baseSize = 2; } else if (type.isNumber()) { baseSize = 16; } else { baseSize = DEFAULT_COLUMN_SIZE; } int result = baseSize * columnSize; if (type.isLargeObject()) { // assign at least 4KB for LOBs. result = Math.max(result, 4 * KB); } return result; }
/** * Gets the size (in bytes) of a column with a specific {@link ColumnType} * and size */ private int getSize(ColumnType type, int columnSize) { final int baseSize; if (type.isBinary()) { baseSize = 1; } else if (type.isBoolean()) { baseSize = 1; } else if (type.isLiteral()) { baseSize = 2; } else if (type.isNumber()) { baseSize = 16; } else { baseSize = DEFAULT_COLUMN_SIZE; } int result = baseSize * columnSize; if (type.isLargeObject()) { // assign at least 4KB for LOBs. result = Math.max(result, 4 * KB); } return result; }
/** * Gets the (approximate) size (in bytes) of a column with a specific * {@link ColumnType}. */ private int getSize(ColumnType type) { if (type.isBinary()) { return 4 * KB; } else if (type.isBoolean()) { return 2; } else if (type.isLargeObject()) { return 4 * KB; } else if (type.isLiteral()) { return KB; } else if (type.isNumber()) { return 16; } else { return DEFAULT_COLUMN_SIZE; } } }
private Object convert(final String value, final ColumnType type) { if (value == null) { return null; } if (type == null) { return value; } final Object result; if (type.isNumber()) { result = NumberComparator.toNumber(value); } else if (type.isBoolean()) { result = BooleanComparator.toBoolean(value); } else if (type.isTimeBased()) { result = TimeComparator.toDate(value); } else { result = value; } if (result == null) { throw new IllegalStateException("Failed to convert value '" + value + "' to type: " + type); } return result; }
private Object convert(final String value, final ColumnType type) { if (value == null) { return null; } if (type == null) { return value; } final Object result; if (type.isNumber()) { result = NumberComparator.toNumber(value); } else if (type.isBoolean()) { result = BooleanComparator.toBoolean(value); } else if (type.isTimeBased()) { result = TimeComparator.toDate(value); } else { result = value; } if (result == null) { throw new IllegalStateException("Failed to convert value '" + value + "' to type: " + type); } return result; }
/** * Gets the (approximate) size (in bytes) of a column with a specific * {@link ColumnType}. */ private int getSize(ColumnType type) { if (type.isBinary()) { return 4 * KB; } else if (type.isBoolean()) { return 2; } else if (type.isLargeObject()) { return 4 * KB; } else if (type.isLiteral()) { return KB; } else if (type.isNumber()) { return 16; } else { return DEFAULT_COLUMN_SIZE; } } }
for (int i = 0; i < columns.length; i++) { final Column column = columns[i]; if (column.getType().isNumber()) { final Number numberValue = ConvertToNumberTransformer.transformValue(term); if (numberValue != null) {