org.datanucleus.enhancer.asm.method
Class JdoNewObjectIdInstance2

java.lang.Object
  extended by org.datanucleus.enhancer.ClassMethod
      extended by org.datanucleus.enhancer.asm.ASMClassMethod
          extended by org.datanucleus.enhancer.asm.method.JdoNewObjectIdInstance2

public class JdoNewObjectIdInstance2
extends ASMClassMethod

Method to generate the method "jdoNewObjectIdInstance" using ASM. For datastore/nondurable identity this is

 public final Object jdoNewObjectIdInstance(Object key)
 {
     return null;
 }
 
and for SingleFieldIdentity
 public final Object jdoNewObjectIdInstance(Object key)
 {
     if (key == null)
         throw new IllegalArgumentException("key is null");
     if (key instanceof String != true)
         return new YYYIdentity(this.getClass(), (YYY) key);
     return new YYYIdentity(this.getClass(), (String) key);
 }
 
and for user-supplied object ids
 public final Object jdoNewObjectIdInstance(Object key)
 {
     return new UserPrimaryKey((String) key);
 }
 

Version:
$Revision: 1.13 $

Field Summary
 
Fields inherited from class org.datanucleus.enhancer.asm.ASMClassMethod
visitor
 
Fields inherited from class org.datanucleus.enhancer.ClassMethod
access, argNames, argTypes, enhancer, exceptions, LOCALISER, methodName, returnType
 
Constructor Summary
JdoNewObjectIdInstance2(ClassEnhancer enhancer, java.lang.String name, int access, java.lang.Object returnType, java.lang.Object[] argTypes, java.lang.String[] argNames)
          Constructor.
 
Method Summary
 void execute()
          Method to add the contents of the class method.
static JdoNewObjectIdInstance2 getInstance(ClassEnhancer enhancer)
           
 
Methods inherited from class org.datanucleus.enhancer.asm.ASMClassMethod
getClassEnhancer, getDescriptor, initialise, initialise
 
Methods inherited from class org.datanucleus.enhancer.ClassMethod
close, equals, getAccess, getMethodAdditionMessage, getName, hashCode
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JdoNewObjectIdInstance2

public JdoNewObjectIdInstance2(ClassEnhancer enhancer,
                               java.lang.String name,
                               int access,
                               java.lang.Object returnType,
                               java.lang.Object[] argTypes,
                               java.lang.String[] argNames)
Constructor.

Parameters:
enhancer - ClassEnhancer
name - Name of method
access - Access type
returnType - Return type
argTypes - Argument types
argNames - Argument names
Method Detail

getInstance

public static JdoNewObjectIdInstance2 getInstance(ClassEnhancer enhancer)

execute

public void execute()
Method to add the contents of the class method.

Specified by:
execute in class ClassMethod


Copyright © 2009. All Rights Reserved.