Class ImmutableMutabilityPlan<T>
- java.lang.Object
-
- org.hibernate.type.descriptor.java.ImmutableMutabilityPlan<T>
-
- All Implemented Interfaces:
Serializable,MutabilityPlan<T>
public class ImmutableMutabilityPlan<T> extends Object implements MutabilityPlan<T>
Mutability plan for immutable objects- See Also:
- Serialized Form
- API Note:
- For use with
Mutability, users should instead useImmutabilityas the type parameterization here does not work with the parameterization defined onMutability.value()
-
-
Field Summary
Fields Modifier and Type Field Description static ImmutableMutabilityPlanINSTANCE
-
Constructor Summary
Constructors Constructor Description ImmutableMutabilityPlan()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Tassemble(Serializable cached, SharedSessionContract session)Assemble a previously disassembled value.TdeepCopy(T value)Return a deep copy of the value.Serializabledisassemble(T value, SharedSessionContract session)Return a disassembled representation of the value.static <X> ImmutableMutabilityPlan<X>instance()booleanisMutable()Can the internal state of instances ofTbe changed?
-
-
-
Field Detail
-
INSTANCE
public static final ImmutableMutabilityPlan INSTANCE
-
-
Method Detail
-
instance
public static <X> ImmutableMutabilityPlan<X> instance()
-
isMutable
public boolean isMutable()
Description copied from interface:MutabilityPlanCan the internal state of instances ofTbe changed?- Specified by:
isMutablein interfaceMutabilityPlan<T>- Returns:
- True if the internal state can be changed; false otherwise.
-
deepCopy
public T deepCopy(T value)
Description copied from interface:MutabilityPlanReturn a deep copy of the value.- Specified by:
deepCopyin interfaceMutabilityPlan<T>- Parameters:
value- The value to deep copy- Returns:
- The deep copy.
-
disassemble
public Serializable disassemble(T value, SharedSessionContract session)
Description copied from interface:MutabilityPlanReturn a disassembled representation of the value.Called before storing a value in the second-level cache.
Complementary to
MutabilityPlan.assemble(java.io.Serializable, org.hibernate.SharedSessionContract).- Specified by:
disassemblein interfaceMutabilityPlan<T>- See Also:
MutabilityPlan.assemble(java.io.Serializable, org.hibernate.SharedSessionContract)
-
assemble
public T assemble(Serializable cached, SharedSessionContract session)
Description copied from interface:MutabilityPlanAssemble a previously disassembled value.Called after reading a value from the second level cache.
Complementary to
MutabilityPlan.disassemble(T, org.hibernate.SharedSessionContract).- Specified by:
assemblein interfaceMutabilityPlan<T>- See Also:
MutabilityPlan.disassemble(T, org.hibernate.SharedSessionContract)
-
-