|
2.17.2: 2011-06-17 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | ENUM CONSTANTS | FIELD | METHOD | DETAIL: ENUM CONSTANTS | FIELD | METHOD |
java.lang.Object java.lang.Enum<Type> net.sf.basedb.core.Type
public enum Type
This class defines constants for supported value types in BASE.
Enum Constant Summary | |
---|---|
BOOLEAN
Boolean type. |
|
DATE
The parameter is a date value. |
|
DOUBLE
Double type. |
|
FLOAT
Float type. |
|
INT
Integer type. |
|
LONG
Long integer type. |
|
STRING
String type where maximum length allowed is 255 characters. |
|
TEXT
Text blob type. |
|
TIMESTAMP
The parameter is a date+time value. |
Field Summary | |
---|---|
private boolean |
canEnumerate
|
private String |
displayValue
|
private boolean |
isNumerical
|
private boolean |
isTemporal
|
private static Map<String,Type> |
stringMapping
|
private String |
stringValue
|
private String |
tableName
|
private TypeWrapper |
typeWrapper
|
private int |
value
|
private Class<?> |
valueClass
|
private static Map<Integer,Type> |
valueMapping
|
Method Summary | |
---|---|
boolean |
canEnumerate()
If it makes sense to use values of this type as an enumeration to choose from. |
Number |
convertNumber(Number num)
Convert a number to the appropriate class. |
static Type |
fromHibernateType(org.hibernate.type.Type hibernateType)
Try to find a matching Type instance given a Hibernate Type object. |
static Type |
fromValue(int value)
Get the Type object when you know the integer code. |
static Type |
fromValue(String value)
Get the Type object when you know the string value. |
int |
getSQLType()
Get the type of this parameter as specified by the java.sql.Types class. |
String |
getStringValue()
Get the string value representation of this type. |
String |
getTableName()
Get the name of the database table, parameter and annotation values of this value type are stored in. |
TypeWrapper |
getTypeWrapper()
Get a wrapper for accessing underlying type information from Hibernate. |
int |
getValue()
Get the integer value that is used when storing a type in the database. |
Class<?> |
getValueClass()
Get the class of objects that can be used as values for this type. |
boolean |
isCorrectType(Object value)
Check if the value is an object of the correct type. |
boolean |
isNumerical()
If the values of this type are numerical values. |
boolean |
isTemporal()
If the values of this type are date/time related. |
(package private) abstract ParameterValueData<?> |
newParameterValueData()
Create a new ParameterValueData subclass which is used to
store values of this value type in the database. |
abstract Object |
parseString(String value)
Parse a string and return a value of the correct type. |
Object |
parseString(String value,
NumberFormat numberFormat)
Deprecated. Use parseString(String, NumberFormat, boolean) instead |
Object |
parseString(String value,
NumberFormat numberFormat,
boolean nullIfException)
Parse a string and return a value of the correct type using a specific number format for numerical values, optionally ignoring unparsable numbers. |
Object[] |
parseStrings(String[] values)
Parse an array of strings and try to convert them to values of the correct object type. |
abstract int |
sizeOf(Object value)
Get the size in bytes an object of this type requires when stored in the database. |
String |
toString()
|
void |
validate(List<?> values)
Check if a list of values contain only objects of the correct type. |
void |
validate(Object value)
Check if an object is a value of the correct type. |
static Type |
valueOf(String name)
Returns the enum constant of this type with the specified name. |
static Type[] |
values()
Returns an array containing the constants of this enum type, in the order they are declared. |
Methods inherited from class java.lang.Enum |
---|
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, valueOf |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, wait, wait, wait |
Enum Constant Detail |
---|
public static final Type INT
public static final Type LONG
public static final Type FLOAT
public static final Type DOUBLE
public static final Type STRING
TEXT
public static final Type TEXT
STRING
public static final Type BOOLEAN
public static final Type DATE
public static final Type TIMESTAMP
Field Detail |
---|
private static final Map<Integer,Type> valueMapping
private static final Map<String,Type> stringMapping
private final TypeWrapper typeWrapper
private final int value
private final Class<?> valueClass
private final String tableName
private final String stringValue
private final String displayValue
private final boolean canEnumerate
private final boolean isNumerical
private final boolean isTemporal
Method Detail |
---|
public static Type[] values()
for (Type c : Type.values()) System.out.println(c);
public static Type valueOf(String name)
name
- the name of the enum constant to be returned.
IllegalArgumentException
- if this enum type has no constant
with the specified name
NullPointerException
- if the argument is nullpublic String toString()
toString
in class Enum<Type>
public TypeWrapper getTypeWrapper()
public int getValue()
public Class<?> getValueClass()
isCorrectType(Object)
public String getStringValue()
public int getSQLType()
java.sql.Types
class.
public String getTableName()
public boolean canEnumerate()
BOOLEAN
and TEXT
type can't be enumerated.
public boolean isNumerical()
public boolean isTemporal()
public void validate(Object value) throws InvalidDataException
value
- Value object to be checked.
InvalidDataException
- If the value isn't of the correct typepublic void validate(List<?> values) throws InvalidDataException
values
- List of objects to be checked.
InvalidDataException
- If the list contains one or more nulls or
values of incorrect object typepublic boolean isCorrectType(Object value)
value
- Value object to be checked.
abstract ParameterValueData<?> newParameterValueData()
ParameterValueData
subclass which is used to
store values of this value type in the database.
public abstract int sizeOf(Object value)
value
- The value to get the size of
public Number convertNumber(Number num)
num
- The number to convert.
public abstract Object parseString(String value) throws InvalidDataException
value
- The string to get the type object from.
InvalidDataException
- If the argument is corrupt.public Object parseString(String value, NumberFormat numberFormat)
parseString(String, NumberFormat, boolean)
instead
value
- The string value to parsenumberFormat
- The number format, or null to use parseString(String)
NumberFormatException
- If the type is numerical and the string can't be
parsed as a numberpublic Object parseString(String value, NumberFormat numberFormat, boolean nullIfException)
value
- The string value to parsenumberFormat
- The number format, or null to use parseString(String)
nullIfException
- TRUE to return null for unparsable numeric values, or
FALSE to throw an exception
NumberFormatException
- If the type is numerical and the string can't be
parsed as a number and the nullIfException parameter is falsepublic Object[] parseStrings(String[] values) throws InvalidDataException
values
- An array of values to parse through.
InvalidDataException
- If at least one of the strings could not
be parsed to the correct typepublic static Type fromValue(int value)
Type
object when you know the integer code.
value
- The integer code to get the Type object for.
public static Type fromValue(String value)
Type
object when you know the string value.
value
- The string value to get the Type object for.
public static Type fromHibernateType(org.hibernate.type.Type hibernateType)
hibernateType
- The Hibernate type
|
2.17.2: 2011-06-17 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | ENUM CONSTANTS | FIELD | METHOD | DETAIL: ENUM CONSTANTS | FIELD | METHOD |