Class LongJavaType
- java.lang.Object
-
- org.hibernate.type.descriptor.java.AbstractClassJavaType<Long>
-
- org.hibernate.type.descriptor.java.LongJavaType
-
- All Implemented Interfaces:
Serializable
,BasicJavaType<Long>
,JavaType<Long>
,PrimitiveJavaType<Long>
,VersionJavaType<Long>
public class LongJavaType extends AbstractClassJavaType<Long> implements PrimitiveJavaType<Long>, VersionJavaType<Long>
Descriptor forLong
handling.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.hibernate.type.descriptor.java.JavaType
JavaType.CoercionContext
-
-
Field Summary
Fields Modifier and Type Field Description static LongJavaType
INSTANCE
-
Constructor Summary
Constructors Constructor Description LongJavaType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <X> Long
coerce(X value, JavaType.CoercionContext coercionContext)
Long
fromString(CharSequence string)
Class<Long[]>
getArrayClass()
Get the Java type that describes an array of this type.long
getDefaultSqlLength(Dialect dialect, JdbcType jdbcType)
The default column length when this Java type is mapped to a SQL data type which is parametrized by length, for exampleTypes.VARCHAR
.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
.int
getDefaultSqlScale(Dialect dialect, JdbcType jdbcType)
The default column scale when this Java type is mapped to a SQL data type which is parametrized by scale, for exampleTypes.DECIMAL
.Long
getDefaultValue()
Get this Java type's default value.Class<?>
getPrimitiveArrayClass()
Get the Java type that describes an array of this type's primitive variant.Class<?>
getPrimitiveClass()
Retrieve the primitive counterpart to the wrapper type identified by this descriptorboolean
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.Long
next(Long current, Long length, Integer precision, Integer scale, SharedSessionContractImplementor session)
Increment the version.Long
seed(Long length, Integer precision, Integer scale, SharedSessionContractImplementor session)
Generate an initial version.String
toString(Long value)
<X> X
unwrap(Long value, Class<X> type, WrapperOptions options)
Unwrap an instance of our handled Java type into the requested type.boolean
useObjectEqualsHashCode()
Whether to useObject.equals(Object)
andObject.hashCode()
orJavaType.areEqual(Object, Object)
andJavaType.extractHashCode(Object)
for objects of this java type.<X> Long
wrap(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.BasicJavaType
getRecommendedJdbcType
-
Methods inherited from interface org.hibernate.type.descriptor.java.JavaType
appendEncodedString, areEqual, createJavaType, createJavaType, extractHashCode, extractLoggableRepresentation, fromEncodedString, getCheckCondition, getComparator, getJavaType, getJavaTypeClass, getLongSqlLength, getMutabilityPlan, getReplacement, getTypeName, isInstance, isTemporalType
-
-
-
-
Field Detail
-
INSTANCE
public static final LongJavaType INSTANCE
-
-
Method Detail
-
useObjectEqualsHashCode
public boolean useObjectEqualsHashCode()
Description copied from interface:JavaType
Whether to useObject.equals(Object)
andObject.hashCode()
orJavaType.areEqual(Object, Object)
andJavaType.extractHashCode(Object)
for objects of this java type. This is useful to avoid mega-morphic callsites.- Specified by:
useObjectEqualsHashCode
in interfaceJavaType<Long>
-
fromString
public Long fromString(CharSequence string)
- Specified by:
fromString
in interfaceBasicJavaType<Long>
- Specified by:
fromString
in interfaceJavaType<Long>
-
unwrap
public <X> X unwrap(Long 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> Long 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.
-
coerce
public <X> Long coerce(X value, JavaType.CoercionContext coercionContext)
-
getPrimitiveClass
public Class<?> getPrimitiveClass()
Description copied from interface:PrimitiveJavaType
Retrieve the primitive counterpart to the wrapper type identified by this descriptor- Specified by:
getPrimitiveClass
in interfacePrimitiveJavaType<Long>
- Returns:
- The primitive Java type.
-
getArrayClass
public Class<Long[]> getArrayClass()
Description copied from interface:PrimitiveJavaType
Get the Java type that describes an array of this type.- Specified by:
getArrayClass
in interfacePrimitiveJavaType<Long>
-
getPrimitiveArrayClass
public Class<?> getPrimitiveArrayClass()
Description copied from interface:PrimitiveJavaType
Get the Java type that describes an array of this type's primitive variant.- Specified by:
getPrimitiveArrayClass
in interfacePrimitiveJavaType<Long>
-
getDefaultValue
public Long getDefaultValue()
Description copied from interface:JavaType
Get this Java type's default value.- Specified by:
getDefaultValue
in interfaceJavaType<Long>
- Returns:
- The default value.
-
getDefaultSqlLength
public long getDefaultSqlLength(Dialect dialect, JdbcType jdbcType)
Description copied from interface:JavaType
The default column length when this Java type is mapped to a SQL data type which is parametrized by length, for exampleTypes.VARCHAR
.- Specified by:
getDefaultSqlLength
in interfaceJavaType<Long>
- Returns:
Size.DEFAULT_LENGTH
unless overridden
-
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<Long>
- Returns:
Size.DEFAULT_PRECISION
unless overridden
-
getDefaultSqlScale
public int getDefaultSqlScale(Dialect dialect, JdbcType jdbcType)
Description copied from interface:JavaType
The default column scale when this Java type is mapped to a SQL data type which is parametrized by scale, for exampleTypes.DECIMAL
.- Specified by:
getDefaultSqlScale
in interfaceJavaType<Long>
- Returns:
Size.DEFAULT_SCALE
unless overridden
-
next
public Long next(Long current, Long length, Integer precision, Integer scale, SharedSessionContractImplementor session)
Description copied from interface:VersionJavaType
Increment the version.- Specified by:
next
in interfaceVersionJavaType<Long>
- 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 Long 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<Long>
- 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
-
-