Package org.datanucleus.metadata
Class InheritanceMetaData
- java.lang.Object
-
- org.datanucleus.metadata.MetaData
-
- org.datanucleus.metadata.InheritanceMetaData
-
- All Implemented Interfaces:
Serializable
public class InheritanceMetaData extends MetaData
Representation of the Meta-Data defining inherited classes.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected DiscriminatorMetaDatadiscriminatorMetaDataDiscriminatorMetaData element.static StringINHERITANCE_TREE_STRATEGY_JOINEDstatic StringINHERITANCE_TREE_STRATEGY_SINGLE_TABLEstatic StringINHERITANCE_TREE_STRATEGY_TABLE_PER_CLASSprotected JoinMetaDatajoinMetaDataJoinMetaData element.protected InheritanceStrategystrategystrategy tag value.protected StringstrategyForTreeStrategy to apply for the whole inheritance tree.-
Fields inherited from class org.datanucleus.metadata.MetaData
EXTENSION_CLASS_CREATETIMESTAMP, EXTENSION_CLASS_CREATETIMESTAMP_COLUMN_NAME, EXTENSION_CLASS_CREATEUSER, EXTENSION_CLASS_CREATEUSER_COLUMN_LENGTH, EXTENSION_CLASS_CREATEUSER_COLUMN_NAME, EXTENSION_CLASS_MULTITENANCY_COLUMN_LENGTH, EXTENSION_CLASS_MULTITENANCY_COLUMN_NAME, EXTENSION_CLASS_MULTITENANCY_JDBC_TYPE, EXTENSION_CLASS_MULTITENANT, EXTENSION_CLASS_READ_ONLY, EXTENSION_CLASS_SOFTDELETE, EXTENSION_CLASS_SOFTDELETE_COLUMN_NAME, EXTENSION_CLASS_UPDATETIMESTAMP, EXTENSION_CLASS_UPDATETIMESTAMP_COLUMN_NAME, EXTENSION_CLASS_UPDATEUSER, EXTENSION_CLASS_UPDATEUSER_COLUMN_LENGTH, EXTENSION_CLASS_UPDATEUSER_COLUMN_NAME, EXTENSION_CLASS_VERSION_FIELD_NAME, EXTENSION_CLASS_VIEW_DEFINITION, EXTENSION_CLASS_VIEW_IMPORTS, EXTENSION_INDEX_COLUMN_ORDERING, EXTENSION_MEMBER_CACHEABLE, EXTENSION_MEMBER_CALENDAR_ONE_COLUMN, EXTENSION_MEMBER_CASCADE_ATTACH, EXTENSION_MEMBER_CASCADE_DETACH, EXTENSION_MEMBER_CASCADE_PERSIST, EXTENSION_MEMBER_CASCADE_REFRESH, EXTENSION_MEMBER_COMPARATOR_NAME, EXTENSION_MEMBER_CONTAINER_ALLOW_NULLS, EXTENSION_MEMBER_CREATE_TIMESTAMP, EXTENSION_MEMBER_CREATE_USER, EXTENSION_MEMBER_ENUM_VALUE_GETTER, EXTENSION_MEMBER_IMPLEMENTATION_CLASSES, EXTENSION_MEMBER_INSERTABLE, EXTENSION_MEMBER_KEY_IMPLEMENTATION_CLASSES, EXTENSION_MEMBER_LIST_ORDERING, EXTENSION_MEMBER_RELATION_DISCRIM_COLUMN, EXTENSION_MEMBER_RELATION_DISCRIM_PK, EXTENSION_MEMBER_RELATION_DISCRIM_VALUE, EXTENSION_MEMBER_STRATEGY_WHEN_NOTNULL, EXTENSION_MEMBER_TYPE_CONVERTER_DISABLED, EXTENSION_MEMBER_TYPE_CONVERTER_NAME, EXTENSION_MEMBER_UPDATE_TIMESTAMP, EXTENSION_MEMBER_UPDATE_USER, EXTENSION_MEMBER_UPDATEABLE, EXTENSION_MEMBER_VALUE_IMPLEMENTATION_CLASSES, EXTENSION_VERSION_NUMBER_INITIAL_VALUE, extensions, metaDataState, parent, VENDOR_NAME
-
-
Constructor Summary
Constructors Constructor Description InheritanceMetaData()Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DiscriminatorMetaDatagetDiscriminatorMetaData()JoinMetaDatagetJoinMetaData()InheritanceStrategygetStrategy()StringgetStrategyForTree()voidinitialise(ClassLoaderResolver clr)Method to initialise the object, creating internal convenience arrays.DiscriminatorMetaDatanewDiscriminatorMetaData()Method to create a new discriminator metadata, assign it to this inheritance, and return it.JoinMetaDatanewJoinMetaData()Method to create a new JoinMetaData, set it, and return it.voidsetDiscriminatorMetaData(DiscriminatorMetaData discriminatorMetaData)voidsetJoinMetaData(JoinMetaData joinMetaData)InheritanceMetaDatasetStrategy(String strategy)InheritanceMetaDatasetStrategy(InheritanceStrategy strategy)InheritanceMetaDatasetStrategyForTree(String strategy)StringtoString()-
Methods inherited from class org.datanucleus.metadata.MetaData
addExtension, addExtensions, getExtensions, getMetaDataManager, getNoOfExtensions, getParent, getValueForExtension, getValuesForExtension, hasExtension, isInitialised, isPopulated, isUsed, removeExtension, setExtensions, setParent
-
-
-
-
Field Detail
-
INHERITANCE_TREE_STRATEGY_JOINED
public static final String INHERITANCE_TREE_STRATEGY_JOINED
- See Also:
- Constant Field Values
-
INHERITANCE_TREE_STRATEGY_TABLE_PER_CLASS
public static final String INHERITANCE_TREE_STRATEGY_TABLE_PER_CLASS
- See Also:
- Constant Field Values
-
INHERITANCE_TREE_STRATEGY_SINGLE_TABLE
public static final String INHERITANCE_TREE_STRATEGY_SINGLE_TABLE
- See Also:
- Constant Field Values
-
strategy
protected InheritanceStrategy strategy
strategy tag value.
-
joinMetaData
protected JoinMetaData joinMetaData
JoinMetaData element.
-
discriminatorMetaData
protected DiscriminatorMetaData discriminatorMetaData
DiscriminatorMetaData element.
-
strategyForTree
protected String strategyForTree
Strategy to apply for the whole inheritance tree. Optional, used by JPA.
-
-
Method Detail
-
initialise
public void initialise(ClassLoaderResolver clr)
Method to initialise the object, creating internal convenience arrays. Initialises all sub-objects.- Overrides:
initialisein classMetaData- Parameters:
clr- Not used
-
setStrategyForTree
public InheritanceMetaData setStrategyForTree(String strategy)
-
getStrategyForTree
public String getStrategyForTree()
-
getStrategy
public InheritanceStrategy getStrategy()
-
setStrategy
public InheritanceMetaData setStrategy(InheritanceStrategy strategy)
-
setStrategy
public InheritanceMetaData setStrategy(String strategy)
-
getJoinMetaData
public JoinMetaData getJoinMetaData()
-
setJoinMetaData
public void setJoinMetaData(JoinMetaData joinMetaData)
-
newJoinMetaData
public JoinMetaData newJoinMetaData()
Method to create a new JoinMetaData, set it, and return it.- Returns:
- The join metadata
-
getDiscriminatorMetaData
public DiscriminatorMetaData getDiscriminatorMetaData()
-
setDiscriminatorMetaData
public void setDiscriminatorMetaData(DiscriminatorMetaData discriminatorMetaData)
-
newDiscriminatorMetaData
public DiscriminatorMetaData newDiscriminatorMetaData()
Method to create a new discriminator metadata, assign it to this inheritance, and return it.- Returns:
- The discriminator metadata
-
-