Annotation Interface GenAsObjectMappable


@Retention(CLASS) @Target(TYPE) @Documented public @interface GenAsObjectMappable
Indicates that the annotated class's properties() are to be persisted as columns in any persistent class which includes it as a GeneratedProperty. Annotated classes automatically implement ObjectMappable.

Note: ObjectMappables are traditionally referred to as cookies and are often given names ending in Info, like PersistInfo.

Supported API: true

See Also:
  • Element Details

    • superClass

      Class superClass
      The parent class for this class. This class would normally be the class designated by the extends statement and is needed because the annotated class must extend "_"+classname" (for example public MyClass extends _MyClass).

      Note: the parent should either be Object (which is the default) or some abstract/concrete class that implements ObjectMappable, like ObjectReference.

      Rose conversion note: Corresponds to Class Specification -> Relations -> Specialize Class (where the specialized class is the single (non-interface) parent class).

      Supported API: true

      Default:
      java.lang.Object.class
    • interfaces

      Class[] interfaces
      The interfaces this class/interface extends/implements. These interfaces would normally be present in the extends clause (for an interface) or the implements clause (for a class), but must, instead, be present in this property because of the manner in which Java treats static final fields.

      Rose conversion note: Corresponds to Class Specification -> Relations -> Specialize Class (where the specialized class is the single (non-interface) parent class).

      Supported API: true

      Default:
      {}
    • properties

      GeneratedProperty[] properties
      Properties of this ObjectMappable. Typically, primitives (strings, ints, longs) and other ObjectMappables (including references).

      Rose conversion note: Corresponds to Class Specification -> Attributes.

      Supported API: true

      Default:
      {}
    • derivedProperties

      DerivedProperty[] derivedProperties
      Derived properties of this ObjectMappable. May refer to any of the properties ( GeneratedProperty) of this ObjectMappable or interfaces/parent classes.

      Supported API: true

      Default:
      {}
    • serializable

      Serialization serializable
      Indicates how the annotated class should be serialized.

      Rose conversion note: Corresponds to Class Specification -> Windchill -> Serializable.

      Supported API: true

      Default:
      EXTERNALIZABLE_BASIC
    • extendable

      boolean extendable
      Indicates whether this class is supported for customization. Note that this property is validated during customization compilation: customers will get a compilation error if they attempt to extend a non-extendable class.

      Supported API: true

      Default:
      false
    • versions

      long[] versions
      A list of externalization version UIDs needed to support deserialization of old versions of this class.

      Supported API: true

      Default:
      {}
    • depthLock

      int depthLock
      Replaces the mechanism of using DepthLock interfaces to force a specific depth for a given interface or class.

      Supported API: true

      Default:
      -1