- java.lang.Object
-
- org.datanucleus.enhancer.ClassMethod
-
- org.datanucleus.enhancer.methods.GetViaMediate
-
public class GetViaMediate extends ClassMethod
Method to generate the method "dnGetZZZ" using ASM for MEDIATE_READ fields.static YYY dnGetZZZ(MyClass objPC) { if (objPC.dnStateManager != null && !objPC.dnStateManager.isLoaded(objPC, 0)) return (YYY) objPC.dnStateManager.getObjectField(objPC, 0, objPC.ZZZ); if (objPC.dnIsDetached() != false && ((BitSet) objPC.dnDetachedState[2]).get(0) != true && ((BitSet) objPC.dnDetachedState[3]).get(0) != true) throw new JDODetachedFieldAccessException(...); return objPC.ZZZ; }
with the last part only applying when Detachable
-
-
Field Summary
Fields Modifier and Type Field Description protected AbstractMemberMetaData
fmd
Field that this dnGetXXX is for.-
Fields inherited from class org.datanucleus.enhancer.ClassMethod
access, argNames, argTypes, enhancer, exceptions, methodName, returnType, visitor
-
-
Constructor Summary
Constructors Constructor Description GetViaMediate(ClassEnhancer enhancer, AbstractMemberMetaData fmd)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
execute()
Method to add the contents of the class method.-
Methods inherited from class org.datanucleus.enhancer.ClassMethod
close, equals, getAccess, getClassEnhancer, getDescriptor, getMethodAdditionMessage, getName, getNamer, hashCode, initialise, initialise
-
-
-
-
Field Detail
-
fmd
protected AbstractMemberMetaData fmd
Field that this dnGetXXX is for.
-
-
Constructor Detail
-
GetViaMediate
public GetViaMediate(ClassEnhancer enhancer, AbstractMemberMetaData fmd)
Constructor.- Parameters:
enhancer
- ClassEnhancerfmd
- MetaData for the field we are generating for
-
-
Method Detail
-
execute
public void execute()
Method to add the contents of the class method.- Specified by:
execute
in classClassMethod
-
-