Annotation Interface GenAsPersistable
Persistable interface.
Supported API: true
- See Also:
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionIndicates the type of data (eg admin vs user) persisted by the class.intReplaces the mechanism of usingDepthLockinterfaces to force a specific depth for a given interface or class.Derived properties of thisPersistable.booleanIndicates whether this class is supported for customization.Persistent objects aggregated by this persistable and stored as foreign key links.The locations of the icons for thePersistable.Class[]The interfaces this class/interface extends/implements.Properties of thisPersistable.Indicates how the annotated class should be serialized.The parent class for this class.Specifies table's name, table space, and size as well as indexes and unique indexes.long[]A list of externalization version UIDs needed to support deserialization of old versions of this class.
-
Element Details
-
superClass
Class superClassThe parent class for this class. This class would normally be the class designated by theextendsstatement and is needed because the annotated class must extend "_"+classname" (for examplepublic MyClass extends _MyClass).Note: the parent should either be
Objector some abstract/concrete class that implementsPersistable, likeWTObjector any of thewt.enterpriseabstractions. Also, if you want to extend a link class, useGenAsBinaryLinkinstead.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[] interfacesThe interfaces this class/interface extends/implements. These interfaces would normally be present in theextendsclause (for an interface) or theimplementsclause (for a class), but must, instead, be present in this property because of the manner in whichJavatreatsstatic finalfields.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[] propertiesProperties of thisPersistable. May includeJava"primitives" (such as strings, ints, timestamps, etc.) orObjectMappableclasses but can not include otherPersistableclasses.Rose conversion note: Corresponds to Class Specification -> Attributes.
Supported API: true
- See Also:
- Default:
{}
-
foreignKeys
GeneratedForeignKey[] foreignKeysPersistent objects aggregated by this persistable and stored as foreign key links. All foreign key associations must be modeled here as foreign keys (rather than as binary links) as the annotation processor would otherwise not know it's responsible for generating the accessor methods. Note, however, that the (binary link) association will be generated for you.Rose conversion note: Corresponds to any association modeled as a ForeignKeyLink.
Supported API: true
- Default:
{}
-
derivedProperties
DerivedProperty[] derivedPropertiesDerived properties of thisPersistable. May refer to any of the properties (GeneratedProperty) of thisPersistableor interfaces/parent classes.Supported API: true
- Default:
{}
-
serializable
Serialization serializableIndicates how the annotated class should be serialized.Rose conversion note: Corresponds to Class Specification -> Windchill -> Serializable.
Supported API: true
- Default:
EXTERNALIZABLE_BASIC
-
dataType
DataType dataTypeIndicates the type of data (eg admin vs user) persisted by the class.Supported API: true
- Default:
DEFAULT
-
extendable
boolean extendableIndicates 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[] versionsA list of externalization version UIDs needed to support deserialization of old versions of this class.Supported API: true
- Default:
{}
-
depthLock
int depthLockReplaces the mechanism of usingDepthLockinterfaces to force a specific depth for a given interface or class.Supported API: true
- Default:
-1
-
tableProperties
TableProperties tablePropertiesSpecifies table's name, table space, and size as well as indexes and unique indexes.Rose conversion note: Corresponds to Class Specification -> Windchill -> Datastore properties.
Supported API: true
- Default:
@com.ptc.windchill.annotations.metadata.TableProperties
-
iconProperties
IconProperties iconPropertiesThe locations of the icons for thePersistable. If defaulted, uses the parent's icon locations.Rose conversion note: Corresponds to Class Specification -> Windchill -> UI Properties.
Supported API: true
- Default:
@com.ptc.windchill.annotations.metadata.IconProperties
-