Package org.datanucleus.enhancer.methods
Class CopyKeyFieldsToObjectId2
java.lang.Object
org.datanucleus.enhancer.ClassMethod
org.datanucleus.enhancer.methods.CopyKeyFieldsToObjectId2
Method to generate the method "dnCopyKeyFieldsToObjectId" using ASM.
For datastore/nondurable identity
public void dnCopyKeyFieldsToObjectId(Persistable.ObjectIdFieldSupplier objectidfieldsupplier, Object object) { }and for SingleFieldIdentity
public void dnCopyKeyFieldsToObjectId(Persistable.ObjectIdFieldSupplier fs, Object oid) { throw new JDOFatalInternalException("It's illegal to call ..."); }and for user-supplied app identity
public void dnCopyKeyFieldsToObjectId(Persistable.ObjectIdFieldSupplier fs, Object oid) { if (fs == null) throw new IllegalArgumentException("ObjectIdFieldSupplier is null"); if (oid instanceof UserPrimaryKey != true) throw new ClassCastException("oid is not instanceof mydomain.UserPrimaryKey"); UserPrimaryKey o = (UserPrimaryKey) oid; o.zzz1 = fs.fetchYYY1Field(1); o.zzz2 = fs.fetchYYY2Field(2); }and for CompoundIdentity
public void dnCopyKeyFieldsToObjectId(Persistable.ObjectIdFieldSupplier fs, Object oid) { if (fs == null) throw new IllegalArgumentException("ObjectIdFieldSupplier is null"); if (oid instanceof UserPrimaryKey != true) throw new ClassCastException("oid is not instanceof mydomain.UserPrimaryKey"); UserPrimaryKey o = (UserPrimaryKey) oid; o.zzz1 = fs.fetchYYYField(1); o.zzz2 = ((YYY2.Key)JDOHelper.getObjectId((YYY2)fs.fetchObjectField(2))); }
-
Field Summary
Fields inherited from class org.datanucleus.enhancer.ClassMethod
access, argNames, argTypes, enhancer, exceptions, methodName, returnType, visitor
-
Constructor Summary
ConstructorsConstructorDescriptionCopyKeyFieldsToObjectId2
(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 CopyKeyFieldsToObjectId2
getInstance
(ClassEnhancer enhancer) Methods inherited from class org.datanucleus.enhancer.ClassMethod
close, equals, getAccess, getClassEnhancer, getDescriptor, getMethodAdditionMessage, getName, getNamer, hashCode, initialise, initialise
-
Constructor Details
-
CopyKeyFieldsToObjectId2
public CopyKeyFieldsToObjectId2(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.- Specified by:
execute
in classClassMethod
-