cuba.util.codegen
Class EJB3AdapterGenerator

java.lang.Object
  extended by cuba.util.codegen.EJB3AdapterGenerator

public class EJB3AdapterGenerator
extends java.lang.Object


Field Summary
protected  CUBAComponent component
           
protected  java.lang.Class externalInterface
           
protected  java.lang.String externalInterfacePackage
           
protected  java.lang.Class implClass
           
protected  java.lang.String implPackage
           
protected  java.lang.Class internalInterface
           
protected  java.lang.String internalInterfacePackage
           
static java.lang.String METHODPARAMNAME_PREFIX
           
static java.lang.String METHODRETURN
           
protected  AdapterGeneratorOptions options
           
 
Constructor Summary
EJB3AdapterGenerator(CUBAComponent component, java.lang.String internalInterfacePackage, java.lang.String externalInterfacePackage, java.lang.String implPackage, AdapterGeneratorOptions options)
           
 
Method Summary
protected  void checkSerializable(java.lang.Class type)
           
protected  void checkSignature(java.lang.reflect.Method method, boolean external)
           
protected  void collectForeignType(java.lang.String homePackage, java.util.HashSet types, java.lang.Class type)
           
 GeneratorResult generate(GeneratorResult result)
           
protected  void generateComponentInjection(GeneratedFile adapter)
           
protected  void generateCoreMethodCall(GeneratedFile adapter, java.lang.String methodName, java.lang.Class[] paramTypes)
           
protected  void generateDefaultEnvironment(GeneratedFile adapter)
           
protected  void generateDependencyInjection(GeneratedFile adapter)
           
protected  void generateEntityManagerInjection(GeneratedFile adapter)
           
protected  void generateEnvironmentInjection(GeneratedFile adapter)
           
protected  void generateFileHeader(GeneratedFile adapter, java.lang.String info, java.lang.Class interfaceType)
           
protected  void generateInjection(GeneratedFile adapter, java.lang.String injectionType, java.util.Collection refs)
           
protected  void generateInjectionStatement(GeneratedFile adapter, Reference ref, java.lang.String getter)
           
protected  void generateLifecyleCall(GeneratedFile adapter, java.lang.String callType)
           
protected  void generateLifecyleCall(GeneratedFile adapter, java.lang.String callType, java.lang.String annotation)
           
 void generateMethod(GeneratedFile adapter, java.lang.reflect.Method method, boolean external)
           
protected  void generateMethodDeclarator(GeneratedFile adapter, java.lang.reflect.Method method, boolean external)
           
protected  void generatePostActivate(GeneratedFile adapter)
           
protected  void generatePostConstruct(GeneratedFile adapter)
           
protected  void generatePreDestroy(GeneratedFile adapter)
           
protected  void generatePrePassivate(GeneratedFile adapter)
           
protected  java.lang.String generateReferenceDeclarations(GeneratedFile adapter, java.lang.String refType, java.util.Collection refs, java.lang.String separator)
           
protected  void generateResourceInjection(GeneratedFile adapter)
           
protected  java.lang.reflect.Method getMethod(java.lang.Class type, java.lang.String methodName, java.lang.Class[] paramTypes)
           
protected  java.lang.reflect.Method getMethod(java.lang.String typeName, java.lang.String methodName)
           
protected  java.lang.reflect.Method getMethod(java.lang.String typeName, java.lang.String methodName, java.lang.Class[] paramTypes)
           
protected  java.lang.String getSimpleTypeName(java.lang.Class type)
          Does the same as Class.getSimpleName() in Java 5.
protected  boolean isVoid(java.lang.reflect.Method method)
           
protected  java.lang.String literalValue(EnvironmentEntry env)
           
protected  java.lang.String methodMemberName(java.lang.reflect.Method method)
           
protected  GeneratedFile open(java.lang.String basename)
           
protected  GeneratedFile open(java.lang.String basename, java.lang.String packageName)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

METHODPARAMNAME_PREFIX

public static final java.lang.String METHODPARAMNAME_PREFIX
See Also:
Constant Field Values

METHODRETURN

public static final java.lang.String METHODRETURN
See Also:
Constant Field Values

component

protected CUBAComponent component

externalInterface

protected java.lang.Class externalInterface

internalInterface

protected java.lang.Class internalInterface

implClass

protected java.lang.Class implClass

externalInterfacePackage

protected java.lang.String externalInterfacePackage

internalInterfacePackage

protected java.lang.String internalInterfacePackage

implPackage

protected java.lang.String implPackage

options

protected AdapterGeneratorOptions options
Constructor Detail

EJB3AdapterGenerator

public EJB3AdapterGenerator(CUBAComponent component,
                            java.lang.String internalInterfacePackage,
                            java.lang.String externalInterfacePackage,
                            java.lang.String implPackage,
                            AdapterGeneratorOptions options)
                     throws GeneratorException
Throws:
GeneratorException
Method Detail

generateMethodDeclarator

protected void generateMethodDeclarator(GeneratedFile adapter,
                                        java.lang.reflect.Method method,
                                        boolean external)
                                 throws GeneratorException
Throws:
GeneratorException

generateMethod

public void generateMethod(GeneratedFile adapter,
                           java.lang.reflect.Method method,
                           boolean external)
                    throws GeneratorException
Throws:
GeneratorException

generateLifecyleCall

protected void generateLifecyleCall(GeneratedFile adapter,
                                    java.lang.String callType,
                                    java.lang.String annotation)
                             throws GeneratorException
Throws:
GeneratorException

generatePostConstruct

protected void generatePostConstruct(GeneratedFile adapter)
                              throws GeneratorException
Throws:
GeneratorException

generatePreDestroy

protected void generatePreDestroy(GeneratedFile adapter)
                           throws GeneratorException
Throws:
GeneratorException

generatePrePassivate

protected void generatePrePassivate(GeneratedFile adapter)
                             throws GeneratorException
Throws:
GeneratorException

generatePostActivate

protected void generatePostActivate(GeneratedFile adapter)
                             throws GeneratorException
Throws:
GeneratorException

literalValue

protected java.lang.String literalValue(EnvironmentEntry env)
                                 throws GeneratorException
Throws:
GeneratorException

generateDefaultEnvironment

protected void generateDefaultEnvironment(GeneratedFile adapter)

generateEnvironmentInjection

protected void generateEnvironmentInjection(GeneratedFile adapter)
                                     throws GeneratorException
Throws:
GeneratorException

generateInjection

protected void generateInjection(GeneratedFile adapter,
                                 java.lang.String injectionType,
                                 java.util.Collection refs)
                          throws GeneratorException
Throws:
GeneratorException

generateReferenceDeclarations

protected java.lang.String generateReferenceDeclarations(GeneratedFile adapter,
                                                         java.lang.String refType,
                                                         java.util.Collection refs,
                                                         java.lang.String separator)
                                                  throws GeneratorException
Throws:
GeneratorException

generate

public GeneratorResult generate(GeneratorResult result)
                         throws GeneratorException
Throws:
GeneratorException

open

protected GeneratedFile open(java.lang.String basename)
                      throws GeneratorException
Throws:
GeneratorException

open

protected GeneratedFile open(java.lang.String basename,
                             java.lang.String packageName)
                      throws GeneratorException
Throws:
GeneratorException

generateFileHeader

protected void generateFileHeader(GeneratedFile adapter,
                                  java.lang.String info,
                                  java.lang.Class interfaceType)

collectForeignType

protected void collectForeignType(java.lang.String homePackage,
                                  java.util.HashSet types,
                                  java.lang.Class type)

getSimpleTypeName

protected java.lang.String getSimpleTypeName(java.lang.Class type)
Does the same as Class.getSimpleName() in Java 5. The function appears here to keep the CUBA code compatible with JDK 1.4


checkSerializable

protected void checkSerializable(java.lang.Class type)
                          throws GeneratorException
Throws:
GeneratorException

checkSignature

protected void checkSignature(java.lang.reflect.Method method,
                              boolean external)
                       throws GeneratorException
Throws:
GeneratorException

getMethod

protected java.lang.reflect.Method getMethod(java.lang.Class type,
                                             java.lang.String methodName,
                                             java.lang.Class[] paramTypes)
                                      throws GeneratorException
Throws:
GeneratorException

getMethod

protected java.lang.reflect.Method getMethod(java.lang.String typeName,
                                             java.lang.String methodName,
                                             java.lang.Class[] paramTypes)
                                      throws GeneratorException
Throws:
GeneratorException

getMethod

protected java.lang.reflect.Method getMethod(java.lang.String typeName,
                                             java.lang.String methodName)
                                      throws GeneratorException
Throws:
GeneratorException

methodMemberName

protected java.lang.String methodMemberName(java.lang.reflect.Method method)

generateCoreMethodCall

protected void generateCoreMethodCall(GeneratedFile adapter,
                                      java.lang.String methodName,
                                      java.lang.Class[] paramTypes)

generateInjectionStatement

protected void generateInjectionStatement(GeneratedFile adapter,
                                          Reference ref,
                                          java.lang.String getter)

generateResourceInjection

protected void generateResourceInjection(GeneratedFile adapter)
                                  throws GeneratorException
Throws:
GeneratorException

generateComponentInjection

protected void generateComponentInjection(GeneratedFile adapter)
                                   throws GeneratorException
Throws:
GeneratorException

generateEntityManagerInjection

protected void generateEntityManagerInjection(GeneratedFile adapter)
                                       throws GeneratorException
Throws:
GeneratorException

generateDependencyInjection

protected void generateDependencyInjection(GeneratedFile adapter)
                                    throws GeneratorException
Throws:
GeneratorException

generateLifecyleCall

protected void generateLifecyleCall(GeneratedFile adapter,
                                    java.lang.String callType)
                             throws GeneratorException
Throws:
GeneratorException

isVoid

protected boolean isVoid(java.lang.reflect.Method method)