public class ClassDetails extends Object
PersistenceWeaver| Modifier and Type | Field and Description |
|---|---|
protected Map<String,AttributeDetails> |
attributesMap
Map of this class' persistent attributes where the key is the Attribute name.
|
protected String |
className
Name of this class.
|
protected MetadataClass |
describedClass |
protected Map<String,AttributeDetails> |
getterMethodToAttributeDetails
Map of this class' persistent get methods where the key is the getMethod name.
|
protected boolean |
implementsCloneMethod
Determine if this class specifically implements a clone method
|
protected boolean |
isEmbedable
Determine if a JPA "embedable" (aggregate).
|
protected boolean |
isMappedSuperClass
Determine if a JPA "mapped superclass".
|
protected Map<String,AttributeDetails> |
setterMethodToAttributeDetails
Map of this class' persistent set methods where the key is the setMethod name.
|
protected boolean |
shouldWeaveChangeTracking
Define if change tracking should be weaved in this class.
|
protected boolean |
shouldWeaveConstructorOptimization
Determine if a new constructor can be used to bypass setting variables to default values.
|
protected boolean |
shouldWeaveFetchGroups
Define if fetch groups should be weaved in this class.
|
protected boolean |
shouldWeaveInternal
Define if internal optimizations should be weaved in this class.
|
protected boolean |
shouldWeaveRest
Define if this class should be weaved for our REST support
|
protected boolean |
shouldWeaveValueHolders
Define if lazy value holders should be weaved in this class.
|
protected ClassDetails |
superClassDetails
Superclass' ClassDetails - only populated if superclass is also persistent.
|
protected String |
superClassName
Superclass' name.
|
protected boolean |
usesAttributeAccess
Determine if class uses attribute access, lazily initialized.
|
protected List<VirtualAttributeMethodInfo> |
virtualAccessMethods
The methods that are used by virtual attributes as getter methods.
|
| Constructor and Description |
|---|
ClassDetails() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canWeaveChangeTracking() |
boolean |
canWeaveConstructorOptimization()
Returns true if
Used with field access, and is set to false if transient variables are discovered
|
boolean |
doesSuperclassWeaveChangeTracking() |
AttributeDetails |
getAttributeDetailsFromClassOrSuperClass(String attributeName) |
Map<String,AttributeDetails> |
getAttributesMap() |
String |
getClassName() |
MetadataClass |
getDescribedClass() |
Map<String,AttributeDetails> |
getGetterMethodToAttributeDetails() |
boolean |
getImplementsCloneMethod() |
VirtualAttributeMethodInfo |
getInfoForVirtualGetMethod(String getMethodName)
INTERNAL:
Search the list of virtualAccessMethods for a VirtualAttributeMethodInfo with the given
getMethodName.
|
VirtualAttributeMethodInfo |
getInfoForVirtualSetMethod(String setMethodName)
INTERNAL:
Search the list of virtualAccessMethods for a VirtualAttributeMethodInfo with the given
setMethodName.
|
String |
getNameOfSuperclassImplementingCloneMethod()
Return the name of the most direct superclass that has a direct implementation of
a clone method.
|
Map<String,AttributeDetails> |
getSetterMethodToAttributeDetails() |
ClassDetails |
getSuperClassDetails() |
String |
getSuperClassName() |
List<VirtualAttributeMethodInfo> |
getVirtualAccessMethods() |
boolean |
isEmbedable() |
boolean |
isInMetadataHierarchy(String className)
Returns true if the given class name represents this class, or any
superclass that can be navigated to by recursively navigating up the
structure of superClassDetails stored in this class.
|
boolean |
isInSuperclassHierarchy(String className)
Returns true if the given class name represents this class, or any
superclass that can be navigated to by recursively navigating up the
structure of superClassDetails stored in this class.
|
boolean |
isMappedSuperClass() |
void |
setAttributesMap(Map<String,AttributeDetails> attributesMap) |
void |
setClassName(String className) |
void |
setDescribedClass(MetadataClass describedClass) |
void |
setGetterMethodToAttributeDetails(Map<String,AttributeDetails> map) |
void |
setImplementsCloneMethod(boolean implementsCloneMethod) |
void |
setIsEmbedable(boolean isEmbedable) |
void |
setIsMappedSuperClass(boolean isMappedSuperClass) |
void |
setSetterMethodToAttributeDetails(Map map) |
void |
setShouldWeaveChangeTracking(boolean shouldWeaveChangeTracking) |
void |
setShouldWeaveConstructorOptimization(boolean shouldWeaveConstructorOptimization) |
void |
setShouldWeaveFetchGroups(boolean shouldWeaveFetchGroups) |
void |
setShouldWeaveInternal(boolean shouldWeaveInternal) |
void |
setShouldWeaveREST(boolean shouldWeaveRest) |
void |
setShouldWeaveValueHolders(boolean shouldWeaveValueHolders) |
void |
setSuperClassDetails(ClassDetails superClassDetails) |
void |
setSuperClassName(String superClassName) |
void |
setVirtualAccessMethods(List<VirtualAttributeMethodInfo> virtualAccessMethods) |
boolean |
shouldWeaveChangeTracking() |
boolean |
shouldWeaveFetchGroups() |
boolean |
shouldWeaveInternal() |
boolean |
shouldWeaveREST() |
boolean |
shouldWeaveValueHolders() |
void |
useAttributeAccess() |
boolean |
usesAttributeAccess()
If one attribute of this class uses attribute access, by the JPA specification, all
attributes must use attribute access
This method assumes it is called when this class details is completely initialized.
|
protected MetadataClass describedClass
protected String className
protected String superClassName
protected ClassDetails superClassDetails
protected boolean shouldWeaveValueHolders
protected boolean shouldWeaveChangeTracking
protected boolean shouldWeaveFetchGroups
protected boolean shouldWeaveInternal
protected boolean shouldWeaveRest
protected Map<String,AttributeDetails> attributesMap
protected Map<String,AttributeDetails> getterMethodToAttributeDetails
protected Map<String,AttributeDetails> setterMethodToAttributeDetails
protected boolean isMappedSuperClass
protected boolean isEmbedable
protected boolean usesAttributeAccess
protected boolean implementsCloneMethod
protected boolean shouldWeaveConstructorOptimization
protected List<VirtualAttributeMethodInfo> virtualAccessMethods
public MetadataClass getDescribedClass()
public String getClassName()
public void setDescribedClass(MetadataClass describedClass)
public void setClassName(String className)
public String getSuperClassName()
public void setSuperClassName(String superClassName)
public ClassDetails getSuperClassDetails()
public void setSuperClassDetails(ClassDetails superClassDetails)
public boolean shouldWeaveValueHolders()
public void setShouldWeaveValueHolders(boolean shouldWeaveValueHolders)
public boolean shouldWeaveChangeTracking()
public void setShouldWeaveChangeTracking(boolean shouldWeaveChangeTracking)
public void setShouldWeaveConstructorOptimization(boolean shouldWeaveConstructorOptimization)
public boolean shouldWeaveFetchGroups()
public void setShouldWeaveFetchGroups(boolean shouldWeaveFetchGroups)
public boolean shouldWeaveInternal()
public void setShouldWeaveInternal(boolean shouldWeaveInternal)
public boolean shouldWeaveREST()
public void setShouldWeaveREST(boolean shouldWeaveRest)
public Map<String,AttributeDetails> getAttributesMap()
public Map<String,AttributeDetails> getGetterMethodToAttributeDetails()
public Map<String,AttributeDetails> getSetterMethodToAttributeDetails()
public void setAttributesMap(Map<String,AttributeDetails> attributesMap)
public void setGetterMethodToAttributeDetails(Map<String,AttributeDetails> map)
public boolean getImplementsCloneMethod()
public VirtualAttributeMethodInfo getInfoForVirtualGetMethod(String getMethodName)
getMethodName - public VirtualAttributeMethodInfo getInfoForVirtualSetMethod(String setMethodName)
setMethodName - public void setImplementsCloneMethod(boolean implementsCloneMethod)
public String getNameOfSuperclassImplementingCloneMethod()
public List<VirtualAttributeMethodInfo> getVirtualAccessMethods()
public void setVirtualAccessMethods(List<VirtualAttributeMethodInfo> virtualAccessMethods)
public boolean isMappedSuperClass()
public void setIsMappedSuperClass(boolean isMappedSuperClass)
public boolean isEmbedable()
public void setIsEmbedable(boolean isEmbedable)
public void setSetterMethodToAttributeDetails(Map map)
public boolean usesAttributeAccess()
public void useAttributeAccess()
public AttributeDetails getAttributeDetailsFromClassOrSuperClass(String attributeName)
public boolean doesSuperclassWeaveChangeTracking()
public boolean canWeaveChangeTracking()
public boolean canWeaveConstructorOptimization()
public boolean isInMetadataHierarchy(String className)
className - public boolean isInSuperclassHierarchy(String className)
className - Copyright © 2007–2021 Eclipse.org - EclipseLink Project. All rights reserved.