Class EnumJavaType<T extends Enum<T>>
- java.lang.Object
-
- org.hibernate.type.descriptor.java.AbstractClassJavaType<T>
-
- org.hibernate.type.descriptor.java.EnumJavaType<T>
-
- All Implemented Interfaces:
Serializable,BasicJavaType<T>,JavaType<T>
public class EnumJavaType<T extends Enum<T>> extends AbstractClassJavaType<T>
Describes a Javaenumtype.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.hibernate.type.descriptor.java.JavaType
JavaType.CoercionContext
-
-
Constructor Summary
Constructors Constructor Description EnumJavaType(Class<T> type)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TfromByte(Byte relationalForm)Interpret a numeric value as the ordinal of the enum typeTfromInteger(Integer relationalForm)Interpret a numeric value as the ordinal of the enum typeTfromLong(Long relationalForm)Interpret a numeric value as the ordinal of the enum typeTfromName(String relationalForm)Interpret a String value as the named value of the enum typeTfromOrdinal(Integer relationalForm)Interpret a numeric value as the ordinal of the enum typeTfromShort(Short relationalForm)Interpret a numeric value as the ordinal of the enum typeTfromString(CharSequence string)JdbcTypegetRecommendedJdbcType(JdbcTypeIndicators context)Obtain the "recommended"SQL type descriptorfor this Java type.booleanhasManyValues()booleanisWider(JavaType<?> javaType)Determines if this Java type is wider than the given Java type, that is, if the given type can be safely widened to this type.BytetoByte(T domainForm)Convert a value of the enum type to its ordinal valueIntegertoInteger(T domainForm)Convert a value of the enum type to its ordinal valueLongtoLong(T domainForm)Convert a value of the enum type to its ordinal valueStringtoName(T domainForm)Convert a value of the enum type to its name valueIntegertoOrdinal(T domainForm)Convert a value of the enum type to its ordinal valueShorttoShort(T domainForm)Convert a value of the enum type to its ordinal valueStringtoString(T value)<X> Xunwrap(T value, Class<X> type, WrapperOptions options)Unwrap an instance of our handled Java type into the requested type.<X> Twrap(X value, WrapperOptions options)Wrap a value as our handled Java type.-
Methods inherited from class org.hibernate.type.descriptor.java.AbstractClassJavaType
areEqual, extractHashCode, extractLoggableRepresentation, getComparator, getJavaType, getJavaTypeClass, getMutabilityPlan, unknownUnwrap, unknownWrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.type.descriptor.java.JavaType
appendEncodedString, coerce, createJavaType, createJavaType, fromEncodedString, getDefaultSqlLength, getDefaultSqlPrecision, getDefaultSqlScale, getDefaultValue, getLongSqlLength, getReplacement, isInstance, isTemporalType
-
-
-
-
Method Detail
-
getRecommendedJdbcType
public JdbcType getRecommendedJdbcType(JdbcTypeIndicators context)
Description copied from interface:BasicJavaTypeObtain the "recommended"SQL type descriptorfor this Java type. Often, but not always, the source of this recommendation is the JDBC specification.- Parameters:
context- Contextual information- Returns:
- The recommended SQL type descriptor
-
hasManyValues
public boolean hasManyValues()
-
fromString
public T fromString(CharSequence string)
-
unwrap
public <X> X unwrap(T value, Class<X> type, WrapperOptions options)
Description copied from interface:JavaTypeUnwrap an instance of our handled Java type into the requested type.As an example, if this is a
JavaType<Integer>and we are asked to unwrap theInteger valueas aLong, we would return something likeLong.valueOf( value.longValue() ).Intended use is during
PreparedStatementbinding.- Type Parameters:
X- The conversion type.- Parameters:
value- The value to unwraptype- The type as which to unwrapoptions- The options- Returns:
- The unwrapped value.
-
wrap
public <X> T wrap(X value, WrapperOptions options)
Description copied from interface:JavaTypeWrap a value as our handled Java type.Intended use is during
ResultSetextraction.- Type Parameters:
X- The conversion type.- Parameters:
value- The value to wrap.options- The options- Returns:
- The wrapped value.
-
toInteger
public Integer toInteger(T domainForm)
Convert a value of the enum type to its ordinal value
-
toOrdinal
public Integer toOrdinal(T domainForm)
Convert a value of the enum type to its ordinal value
-
fromByte
public T fromByte(Byte relationalForm)
Interpret a numeric value as the ordinal of the enum type
-
fromShort
public T fromShort(Short relationalForm)
Interpret a numeric value as the ordinal of the enum type
-
fromInteger
public T fromInteger(Integer relationalForm)
Interpret a numeric value as the ordinal of the enum type
-
fromLong
public T fromLong(Long relationalForm)
Interpret a numeric value as the ordinal of the enum type
-
fromOrdinal
public T fromOrdinal(Integer relationalForm)
Interpret a numeric value as the ordinal of the enum type
-
fromName
public T fromName(String relationalForm)
Interpret a String value as the named value of the enum type
-
-