The IUserType type exposes the following members.

Methods

  NameDescription
Public methodAssemble
Reconstruct an object from the cacheable representation. At the very least this method should perform a deep copy if the type is mutable. (optional operation)
Public methodDeepCopy
Return a deep copy of the persistent state, stopping at entities and at collections.
Public methodDisassemble
Transform the object into its cacheable representation. At the very least this method should perform a deep copy if the type is mutable. That may not be enough for some implementations, however; for example, associations must be cached as identifier values. (optional operation)
Public methodEquals
Compare two instances of the class mapped by this type for persistent "equality" ie. equality of persistent state
Public methodGetHashCode
Get a hashcode for the instance, consistent with persistence "equality"
Public methodNullSafeGet
Retrieve an instance of the mapped class from a JDBC resultset. Implementors should handle possibility of null values.
Public methodNullSafeSet
Write an instance of the mapped class to a prepared statement. Implementors should handle possibility of null values. A multi-column type should be written to parameters starting from index.
Public methodReplace
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. For immutable objects, or null values, it is safe to simply return the first parameter. For mutable objects, it is safe to return a copy of the first parameter. For objects with component values, it might make sense to recursively replace component values.

Properties

  NameDescription
Public propertyIsMutable
Are objects of this type mutable?
Public propertyReturnedType
The type returned by NullSafeGet()
Public propertySqlTypes
The SQL types for the columns mapped by this type.

See Also