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 TypeMethodDescriptionintcompare(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, MappingContext mappingContext) intgetColumnSpan(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) booleanisDirty(Object old, Object current, boolean[] checkable, SharedSessionContractImplementor session) Should the parent be considered dirty, given both the old and current value?booleanAre objects of this type mutable with respect to the referencing object? Entities and collections are considered immutable because they manage their own internal state.voidnullSafeSet(PreparedStatement st, Object value, int index, boolean[] settable, SharedSessionContractImplementor session) Bind a value represented by an instance of themapped classto the given JDBCPreparedStatement, ignoring some columns as dictated by thesettableparameter.voidnullSafeSet(PreparedStatement st, Object value, int index, SharedSessionContractImplementor session) Bind a value represented by an instance of themapped classto the given JDBCPreparedStatement, ignoring some columns as dictated by thesettableparameter.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 ofbooleanvalues 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, replaceMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.hibernate.type.Type
getReturnedClassName, getTypeForEqualsHashCode
-
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:TypeReturn the JDBC types codes as defined byTypesorSqlTypesfor the columns mapped by this type.The number of elements in this array must match the return from
Type.getColumnSpan(org.hibernate.type.MappingContext).- 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:TypeHow 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:TypeThe 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:TypeGenerate 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
- Throws:
HibernateException
-
getName
Description copied from interface:TypeReturns the abbreviated name of the type.- Returns:
- the Hibernate type name
-
deepCopy
Description copied from interface:TypeReturn 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:TypeAre 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:TypeGiven an instance of the type, return an array ofbooleanvalues 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
-