Class CalendarJavaType
- java.lang.Object
-
- org.hibernate.type.descriptor.java.AbstractClassJavaType<T>
-
- org.hibernate.type.descriptor.java.AbstractTemporalJavaType<Calendar>
-
- org.hibernate.type.descriptor.java.CalendarJavaType
-
- All Implemented Interfaces:
Serializable
,BasicJavaType<Calendar>
,JavaType<Calendar>
,TemporalJavaType<Calendar>
,VersionJavaType<Calendar>
public class CalendarJavaType extends AbstractTemporalJavaType<Calendar> implements VersionJavaType<Calendar>
Descriptor forCalendar
handling.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CalendarJavaType.CalendarMutabilityPlan
-
Nested classes/interfaces inherited from interface org.hibernate.type.descriptor.java.JavaType
JavaType.CoercionContext
-
-
Field Summary
Fields Modifier and Type Field Description static CalendarJavaType
INSTANCE
-
Constructor Summary
Constructors Modifier Constructor Description protected
CalendarJavaType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
areEqual(Calendar one, Calendar another)
Determine if two instances are equalint
extractHashCode(Calendar value)
Extract a proper hash code for the given value.protected <X> TemporalJavaType<X>
forDatePrecision(TypeConfiguration typeConfiguration)
protected <X> TemporalJavaType<X>
forTimePrecision(TypeConfiguration typeConfiguration)
protected <X> TemporalJavaType<X>
forTimestampPrecision(TypeConfiguration typeConfiguration)
Calendar
fromString(CharSequence string)
int
getDefaultSqlPrecision(Dialect dialect, JdbcType jdbcType)
The default column precision when this Java type is mapped to a SQL data type which is parametrized by precision, for exampleTypes.DECIMAL
.TemporalType
getPrecision()
The precision represented by this typeJdbcType
getRecommendedJdbcType(JdbcTypeIndicators context)
Obtain the "recommended"SQL type descriptor
for this Java type.boolean
isWider(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.Calendar
next(Calendar current, Long length, Integer precision, Integer scale, SharedSessionContractImplementor session)
Increment the version.Calendar
seed(Long length, Integer precision, Integer scale, SharedSessionContractImplementor session)
Generate an initial version.String
toString(Calendar value)
<X> X
unwrap(Calendar value, Class<X> type, WrapperOptions options)
Unwrap an instance of our handled Java type into the requested type.<X> Calendar
wrap(X value, WrapperOptions options)
Wrap a value as our handled Java type.-
Methods inherited from class org.hibernate.type.descriptor.java.AbstractTemporalJavaType
resolveTypeForPrecision, toString
-
Methods inherited from class org.hibernate.type.descriptor.java.AbstractClassJavaType
extractLoggableRepresentation, getComparator, getJavaType, getJavaTypeClass, getMutabilityPlan, unknownUnwrap, unknownWrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.hibernate.type.descriptor.java.JavaType
appendEncodedString, coerce, createJavaType, createJavaType, extractLoggableRepresentation, fromEncodedString, getCheckCondition, getComparator, getDefaultSqlLength, getDefaultSqlScale, getDefaultValue, getJavaType, getJavaTypeClass, getLongSqlLength, getMutabilityPlan, getReplacement, getTypeName, isInstance, useObjectEqualsHashCode
-
Methods inherited from interface org.hibernate.type.descriptor.java.TemporalJavaType
isTemporalType
-
-
-
-
Field Detail
-
INSTANCE
public static final CalendarJavaType INSTANCE
-
-
Method Detail
-
getPrecision
public TemporalType getPrecision()
Description copied from interface:TemporalJavaType
The precision represented by this type- Specified by:
getPrecision
in interfaceTemporalJavaType<Calendar>
-
getRecommendedJdbcType
public JdbcType getRecommendedJdbcType(JdbcTypeIndicators context)
Description copied from interface:JavaType
Obtain the "recommended"SQL type descriptor
for this Java type. Often, but not always, the source of this recommendation is the JDBC specification.- Specified by:
getRecommendedJdbcType
in interfaceBasicJavaType<Calendar>
- Specified by:
getRecommendedJdbcType
in interfaceJavaType<Calendar>
- Parameters:
context
- Contextual information- Returns:
- The recommended SQL type descriptor
-
forTimestampPrecision
protected <X> TemporalJavaType<X> forTimestampPrecision(TypeConfiguration typeConfiguration)
- Overrides:
forTimestampPrecision
in classAbstractTemporalJavaType<Calendar>
-
forDatePrecision
protected <X> TemporalJavaType<X> forDatePrecision(TypeConfiguration typeConfiguration)
- Overrides:
forDatePrecision
in classAbstractTemporalJavaType<Calendar>
-
forTimePrecision
protected <X> TemporalJavaType<X> forTimePrecision(TypeConfiguration typeConfiguration)
- Overrides:
forTimePrecision
in classAbstractTemporalJavaType<Calendar>
-
fromString
public Calendar fromString(CharSequence string)
- Specified by:
fromString
in interfaceBasicJavaType<Calendar>
- Specified by:
fromString
in interfaceJavaType<Calendar>
-
areEqual
public boolean areEqual(Calendar one, Calendar another)
Description copied from interface:JavaType
Determine if two instances are equal
-
extractHashCode
public int extractHashCode(Calendar value)
Description copied from interface:JavaType
Extract a proper hash code for the given value.- Specified by:
extractHashCode
in interfaceJavaType<Calendar>
- Overrides:
extractHashCode
in classAbstractClassJavaType<Calendar>
- Parameters:
value
- The value for which to extract a hash code.- Returns:
- The extracted hash code.
-
unwrap
public <X> X unwrap(Calendar value, Class<X> type, WrapperOptions options)
Description copied from interface:JavaType
Unwrap 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 value
as aLong
, we would return something likeLong.valueOf( value.longValue() )
.Intended use is during
PreparedStatement
binding.
-
wrap
public <X> Calendar wrap(X value, WrapperOptions options)
Description copied from interface:JavaType
Wrap a value as our handled Java type.Intended use is during
ResultSet
extraction.
-
isWider
public boolean isWider(JavaType<?> javaType)
Description copied from interface: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.
-
getDefaultSqlPrecision
public int getDefaultSqlPrecision(Dialect dialect, JdbcType jdbcType)
Description copied from interface:JavaType
The default column precision when this Java type is mapped to a SQL data type which is parametrized by precision, for exampleTypes.DECIMAL
.- Specified by:
getDefaultSqlPrecision
in interfaceJavaType<Calendar>
- Returns:
Size.DEFAULT_PRECISION
unless overridden
-
next
public Calendar next(Calendar current, Long length, Integer precision, Integer scale, SharedSessionContractImplementor session)
Description copied from interface:VersionJavaType
Increment the version.- Specified by:
next
in interfaceVersionJavaType<Calendar>
- Parameters:
current
- the current versionlength
- The length of the typeprecision
- The precision of the typescale
- The scale of the typesession
- The session from which this request originates.- Returns:
- an instance of the type
-
seed
public Calendar seed(Long length, Integer precision, Integer scale, SharedSessionContractImplementor session)
Description copied from interface:VersionJavaType
Generate an initial version.Note that this operation is only used when the program sets a null or negative number as the value of the entity version field. It is not called when the program sets the version field to a sensible-looking version.
- Specified by:
seed
in interfaceVersionJavaType<Calendar>
- Parameters:
length
- The length of the typeprecision
- The precision of the typescale
- The scale of the typesession
- The session from which this request originates.- Returns:
- an instance of the type
-
-