Package org.hibernate.type
Class MetaType
java.lang.Object
org.hibernate.type.AbstractType
org.hibernate.type.MetaType
- All Implemented Interfaces:
Serializable
,Type
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
compare
(Object x, Object y, SessionFactoryImplementor sessionFactory) deepCopy
(Object value, SessionFactoryImplementor factory) Return a deep copy of the persistent state, stopping at entities and at collections.fromXMLString
(String xml, Mapping factory) Deprecated.fromXMLString
(String xml, MappingContext mappingContext) int
getColumnSpan
(MappingContext mapping) How many columns are used to persist this type?getName()
Returns the abbreviated name of the type.String[]
Class<?>
The class handled by this type.int[]
getSqlTypeCodes
(MappingContext mappingContext) boolean
isDirty
(Object old, Object current, boolean[] checkable, SharedSessionContractImplementor session) Should the parent be considered dirty, given both the old and current value?boolean
Are objects of this type mutable with respect to the referencing object? Entities and collections are considered immutable because they manage their own internal state.void
nullSafeSet
(PreparedStatement st, Object value, int index, boolean[] settable, SharedSessionContractImplementor session) Bind a value represented by an instance of themapped class
to the given JDBCPreparedStatement
, ignoring some columns as dictated by thesettable
parameter.void
nullSafeSet
(PreparedStatement st, Object value, int index, SharedSessionContractImplementor session) Bind a value represented by an instance of themapped class
to the given JDBCPreparedStatement
, ignoring some columns as dictated by thesettable
parameter.replace
(Object original, Object target, SharedSessionContractImplementor session, Object owner, Map<Object, Object> copyCache) During merge, replace the existing (target) value in the entity we are merging to with a new (original) value from the detached entity we are merging.boolean[]
toColumnNullness
(Object value, MappingContext mapping) Given an instance of the type, return an array ofboolean
values indicating which mapped columns would be null.toLoggableString
(Object value, SessionFactoryImplementor factory) Generate a representation of the given value for logging purposes.toXMLString
(Object value, SessionFactoryImplementor factory) Methods inherited from class org.hibernate.type.AbstractType
assemble, beforeAssemble, compare, disassemble, disassemble, getHashCode, getHashCode, isAnyType, isAssociationType, isCollectionType, isComponentType, isDirty, isEntityType, isEqual, isEqual, isModified, isSame, replace
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.Type
getColumnSpan, getReturnedClassName, getSqlTypeCodes, getTypeForEqualsHashCode, toColumnNullness
-
Field Details
-
REGISTRATION_KEYS
-
-
Constructor Details
-
MetaType
public MetaType(Type valueType, ImplicitDiscriminatorStrategy implicitValueStrategy, Map<Object, String> explicitValueMappings)
-
-
Method Details
-
getBaseType
-
getImplicitValueStrategy
-
getRegistrationKeys
-
getDiscriminatorValuesToEntityNameMap
-
getEntityNameToDiscriminatorValueMap
-
getSqlTypeCodes
Description copied from interface:Type
Return the JDBC types codes as defined byTypes
orSqlTypes
for the columns mapped by this type.The number of elements in this array must match the return from
Type.getColumnSpan(org.hibernate.engine.spi.Mapping)
.- Parameters:
mappingContext
- The mapping contextMappingContext
:/- Returns:
- The JDBC type codes.
- Throws:
MappingException
- Generally indicates an issue accessing the passed mapping object.
-
getColumnSpan
Description copied from interface:Type
How many columns are used to persist this type?Always the same as
getSqlTypCodes(mappingContext).length
.- Parameters:
mapping
- The mapping Context objectMappingContext
- Returns:
- The number of columns
- Throws:
MappingException
- Generally indicates an issue accessing the passed mappingContext object.
-
getReturnedClass
Description copied from interface:Type
The class handled by this type.- Returns:
- The Java class handled by this type.
-
compare
-
toLoggableString
public String toLoggableString(Object value, SessionFactoryImplementor factory) throws HibernateException Description copied from interface:Type
Generate a representation of the given value for logging purposes.- Parameters:
value
- The value to be loggedfactory
- The session factory- Returns:
- The loggable representation
- Throws:
HibernateException
- An error from Hibernate
-
toXMLString
public String toXMLString(Object value, SessionFactoryImplementor factory) throws HibernateException - Throws:
HibernateException
-
fromXMLString
@Deprecated(since="7.0") public Object fromXMLString(String xml, Mapping factory) throws HibernateException Deprecated.- Throws:
HibernateException
-
fromXMLString
- Throws:
HibernateException
-
getName
Description copied from interface:Type
Returns the abbreviated name of the type.- Returns:
- the Hibernate type name
-
deepCopy
Description copied from interface:Type
Return a deep copy of the persistent state, stopping at entities and at collections.- Parameters:
value
- The value to be copiedfactory
- The session factory- Returns:
- The deep copy
- Throws:
HibernateException
- An error from Hibernate
-
isMutable
public boolean isMutable()Description copied from interface:Type
Are objects of this type mutable with respect to the referencing object? Entities and collections are considered immutable because they manage their own internal state.- Returns:
- boolean
-
toColumnNullness
Description copied from interface:Type
Given an instance of the type, return an array ofboolean
values indicating which mapped columns would be null.- Parameters:
value
- an instance of the typemapping
- The mapping contextMappingContext
- Returns:
- array indicating column nullness for a value instance
-
fromXMLString(String, MappingContext)