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 DiscriminatorMetaData
discriminatorMetaData
DiscriminatorMetaData element.static String
INHERITANCE_TREE_STRATEGY_JOINED
static String
INHERITANCE_TREE_STRATEGY_SINGLE_TABLE
static String
INHERITANCE_TREE_STRATEGY_TABLE_PER_CLASS
protected JoinMetaData
joinMetaData
JoinMetaData element.protected InheritanceStrategy
strategy
strategy tag value.protected String
strategyForTree
Strategy 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 DiscriminatorMetaData
getDiscriminatorMetaData()
JoinMetaData
getJoinMetaData()
InheritanceStrategy
getStrategy()
String
getStrategyForTree()
void
initialise(ClassLoaderResolver clr)
Method to initialise the object, creating internal convenience arrays.DiscriminatorMetaData
newDiscriminatorMetaData()
Method to create a new discriminator metadata, assign it to this inheritance, and return it.JoinMetaData
newJoinMetaData()
Method to create a new JoinMetaData, set it, and return it.void
setDiscriminatorMetaData(DiscriminatorMetaData discriminatorMetaData)
void
setJoinMetaData(JoinMetaData joinMetaData)
InheritanceMetaData
setStrategy(String strategy)
InheritanceMetaData
setStrategy(InheritanceStrategy strategy)
InheritanceMetaData
setStrategyForTree(String strategy)
String
toString()
-
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:
initialise
in 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
-
-