Class CustomType<T>


  • public class CustomType<T>
    extends JaversType
    Custom Type in client's domain model.

    JaVers treats a Custom Type as a black box and doesn't take any assumptions about its content or behaviour. It's a "not modeled" type, somehow similar to unbounded wildcard <?>.

    Objects of Custom Type are compared by a CustomPropertyComparator, and registering this comparator (see JaversBuilder.registerCustomComparator(CustomPropertyComparator, Class) is the only way to map a Custom Type.

    Custom Types are serialized to JSON using Gson defaults.
    • Constructor Detail

    • Method Detail

      • equals

        public boolean equals​(java.lang.Object left,
                              java.lang.Object right)
        Description copied from class: JaversType
        Used for comparing as Values
        Overrides:
        equals in class JaversType
      • isInstance

        public boolean isInstance​(java.lang.Object cdo)
        Specified by:
        isInstance in class JaversType
      • getRawDehydratedType

        protected java.lang.reflect.Type getRawDehydratedType()
        Type for JSON representation. For Values it's simply baseJavaType. For ManagedTypes (references to Entities and ValueObjects) it's GlobalId because JaVers serializes references in the 'dehydrated' form.
      • getBaseJavaClass

        public java.lang.Class getBaseJavaClass()