Package org.datanucleus.enhancer.methods
Class GetManagedFieldCount
java.lang.Object
org.datanucleus.enhancer.ClassMethod
org.datanucleus.enhancer.methods.GetManagedFieldCount
Method to generate the method "dnGetManagedFieldCount" using ASM.
-
Field Summary
Fields inherited from class org.datanucleus.enhancer.ClassMethod
access, argNames, argTypes, enhancer, exceptions, methodName, returnType, visitor
-
Constructor Summary
ConstructorsConstructorDescriptionGetManagedFieldCount
(ClassEnhancer enhancer, String name, int access, Object returnType, Object[] argTypes, String[] argNames) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoid
execute()
Method to add the contents of the class method.static GetManagedFieldCount
getInstance
(ClassEnhancer enhancer) Methods inherited from class org.datanucleus.enhancer.ClassMethod
close, equals, getAccess, getClassEnhancer, getDescriptor, getMethodAdditionMessage, getName, getNamer, hashCode, initialise, initialise
-
Constructor Details
-
GetManagedFieldCount
public GetManagedFieldCount(ClassEnhancer enhancer, String name, int access, Object returnType, Object[] argTypes, String[] argNames) Constructor.- Parameters:
enhancer
- ClassEnhancername
- Name of methodaccess
- Access typereturnType
- Return typeargTypes
- Argument typesargNames
- Argument names
-
-
Method Details
-
getInstance
-
execute
public void execute()Method to add the contents of the class method. Usually this method should generate bytecode as:return dnFieldNames.length + superClass.dnGetManagedFieldCount();
but due to initializing issues [ENHANCER-58], we use constants instead, e.g.:return {number of managed fields}+superClass.dnGetManagedFieldCount();
- Specified by:
execute
in classClassMethod
-