Class MutableMutabilityPlan<T>
- java.lang.Object
-
- org.hibernate.type.descriptor.java.MutableMutabilityPlan<T>
-
- All Implemented Interfaces:
java.io.Serializable
,MutabilityPlan<T>
- Direct Known Subclasses:
ArrayMutabilityPlan
,AttributeConverterMutabilityPlanImpl
,CalendarTypeDescriptor.CalendarMutabilityPlan
,DateTypeDescriptor.DateMutabilityPlan
,JdbcDateTypeDescriptor.DateMutabilityPlan
,JdbcTimestampTypeDescriptor.TimestampMutabilityPlan
,JdbcTimeTypeDescriptor.TimeMutabilityPlan
,SerializableTypeDescriptor.SerializableMutabilityPlan
public abstract class MutableMutabilityPlan<T> extends java.lang.Object implements MutabilityPlan<T>
Mutability plan for mutable objects- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description MutableMutabilityPlan()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description T
assemble(java.io.Serializable cached)
Assemble a previously disassembled value.T
deepCopy(T value)
Return a deep copy of the value.protected abstract T
deepCopyNotNull(T value)
java.io.Serializable
disassemble(T value)
Return a "disassembled" representation of the value.boolean
isMutable()
Can the internal state of instances of T be changed?
-
-
-
Method Detail
-
isMutable
public boolean isMutable()
Description copied from interface:MutabilityPlan
Can the internal state of instances of T be changed?- Specified by:
isMutable
in interfaceMutabilityPlan<T>
- Returns:
- True if the internal state can be changed; false otherwise.
-
disassemble
public java.io.Serializable disassemble(T value)
Description copied from interface:MutabilityPlan
Return a "disassembled" representation of the value. This is used to push values onto the second level cache. Compliment toMutabilityPlan.assemble(java.io.Serializable)
- Specified by:
disassemble
in interfaceMutabilityPlan<T>
- Parameters:
value
- The value to disassemble- Returns:
- The disassembled value.
- See Also:
MutabilityPlan.assemble(java.io.Serializable)
-
assemble
public T assemble(java.io.Serializable cached)
Description copied from interface:MutabilityPlan
Assemble a previously disassembled value. This is used when pulling values from the second level cache. Compliment toMutabilityPlan.disassemble(T)
- Specified by:
assemble
in interfaceMutabilityPlan<T>
- Parameters:
cached
- The disassembled state- Returns:
- The re-assembled value.
- See Also:
MutabilityPlan.disassemble(T)
-
deepCopy
public final T deepCopy(T value)
Description copied from interface:MutabilityPlan
Return a deep copy of the value.- Specified by:
deepCopy
in interfaceMutabilityPlan<T>
- Parameters:
value
- The value to deep copy- Returns:
- The deep copy.
-
-