Class CoreInheritancePolicy<ABSTRACT_RECORD extends org.eclipse.persistence.internal.core.sessions.CoreAbstractRecord,ABSTRACT_SESSION extends org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,DESCRIPTOR extends CoreDescriptor,FIELD extends org.eclipse.persistence.internal.core.helper.CoreField>
java.lang.Object
org.eclipse.persistence.core.descriptors.CoreInheritancePolicy<ABSTRACT_RECORD,ABSTRACT_SESSION,DESCRIPTOR,FIELD>
- Direct Known Subclasses:
InheritancePolicy
public abstract class CoreInheritancePolicy<ABSTRACT_RECORD extends org.eclipse.persistence.internal.core.sessions.CoreAbstractRecord,ABSTRACT_SESSION extends org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,DESCRIPTOR extends CoreDescriptor,FIELD extends org.eclipse.persistence.internal.core.helper.CoreField>
extends Object
INTERNAL
A abstraction of inheritance policy capturing behavior common to all
persistence types.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionabstract void
addClassIndicatorFieldToRow
(ABSTRACT_RECORD databaseRow) INTERNAL: Add abstract class indicator information to the database row.abstract void
addClassNameIndicator
(String childClassName, Object typeValue) INTERNAL: Add the class name reference by class name, used by the MW.abstract Class
classFromRow
(ABSTRACT_RECORD record, ABSTRACT_SESSION session) INTERNAL: This method is invoked only for the abstract descriptors.abstract List<DESCRIPTOR>
INTERNAL: Returns all the child descriptors, even descriptors for subclasses of subclasses.abstract FIELD
INTERNAL: Returns field that the class type indicator is store when using inheritance.abstract String
PUBLIC: Return the class indicator field name.abstract Map
INTERNAL: Return the association of indicators and classes using specified ConversionManagerabstract Map
INTERNAL: Return the mapping from class name to indicator, used by MW.abstract DESCRIPTOR
INTERNAL: Returns the descriptor which the policy belongs to.abstract Class
PUBLIC: Return the parent class.abstract DESCRIPTOR
INTERNAL: Return the parent descriptor.abstract boolean
INTERNAL:abstract boolean
INTERNAL: Return whether or not is root parent descriptorabstract void
setClassExtractorName
(String classExtractorName) ADVANCED: Set the class extractor class name.abstract void
setClassIndicatorField
(FIELD classIndicatorField) ADVANCED: To set the class indicator field.abstract void
setClassIndicatorMapping
(Map classIndicatorMapping) PUBLIC: Set the association of indicators and classes.abstract void
setDescriptor
(DESCRIPTOR descriptor) INTERNAL: Set the descriptor.abstract void
setParentClassName
(String parentClassName) INTERNAL: Set the parent class name, used by MW to avoid referencing the real class for deployment XML generation.abstract void
setShouldReadSubclasses
(Boolean shouldReadSubclasses) INTERNAL: Set the descriptor to read instance of itself and its subclasses when queried.
-
Constructor Details
-
CoreInheritancePolicy
public CoreInheritancePolicy()
-
-
Method Details
-
addClassIndicatorFieldToRow
INTERNAL: Add abstract class indicator information to the database row. This is required when building a row for an insert or an update of a concrete child descriptor. -
addClassNameIndicator
INTERNAL: Add the class name reference by class name, used by the MW. -
classFromRow
INTERNAL: This method is invoked only for the abstract descriptors. -
getAllChildDescriptors
INTERNAL: Returns all the child descriptors, even descriptors for subclasses of subclasses. Required for bug 3019934. -
getClassIndicatorField
INTERNAL: Returns field that the class type indicator is store when using inheritance. -
getClassIndicatorFieldName
PUBLIC: Return the class indicator field name. This is the name of the field in the table that stores what type of object this is. -
getClassIndicatorMapping
INTERNAL: Return the association of indicators and classes using specified ConversionManager -
getClassNameIndicatorMapping
INTERNAL: Return the mapping from class name to indicator, used by MW. -
getDescriptor
INTERNAL: Returns the descriptor which the policy belongs to. -
getParentClass
PUBLIC: Return the parent class. -
getParentDescriptor
INTERNAL: Return the parent descriptor. -
hasClassExtractor
public abstract boolean hasClassExtractor()INTERNAL: -
isRootParentDescriptor
public abstract boolean isRootParentDescriptor()INTERNAL: Return whether or not is root parent descriptor -
setClassExtractorName
ADVANCED: Set the class extractor class name. At descriptor initialize time this class will be converted to a Class and set as the ClassExtractor. This method is called from JPA. -
setClassIndicatorField
ADVANCED: To set the class indicator field. This can be used for advanced field types, such as XML nodes, or to set the field type. -
setClassIndicatorMapping
PUBLIC: Set the association of indicators and classes. This may be desired to be used by clients in strange inheritance models. -
setDescriptor
INTERNAL: Set the descriptor. -
setParentClassName
INTERNAL: Set the parent class name, used by MW to avoid referencing the real class for deployment XML generation. -
setShouldReadSubclasses
INTERNAL: Set the descriptor to read instance of itself and its subclasses when queried. This is used with inheritance to configure the result of queries. By default this is true for root inheritance descriptors, and false for all others.
-