cuba.util.codegen
Class WSAdapterGenerator

java.lang.Object
  extended by cuba.util.codegen.AbstractWSAdapterGenerator
      extended by cuba.util.codegen.WSAdapterGenerator

public class WSAdapterGenerator
extends AbstractWSAdapterGenerator

WsAdapterGenerator. As a difference to the EJBAdapterGenerator and WiredAdapterGenerator, this class never produces tracing statements, even if specified in the component descriptor or the code generator call. Internally, the WSAadapter uses a WiredAdapter which will instead be instrumented with tracing statements if required.

Author:
Jan Wegener

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
WSAdapterGenerator(CUBAComponent component, java.lang.String internalInterfacePackage, java.lang.String externalIntrfacePackage, 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)
           
protected  GeneratorResult generate(GeneratorResult result)
           
protected  void generateComponentInjection(GeneratedFile adapter)
           
protected  void generateCoreMethodCall(GeneratedFile adapter, java.lang.reflect.Method method)
           
protected  void generateCoreMethodCall(GeneratedFile adapter, java.lang.String methodName, java.lang.Class[] paramTypes)
           
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 generateInjectionStatement(GeneratedFile adapter, Reference ref, java.lang.String getter)
           
protected  void generateLifecyleCall(GeneratedFile adapter, java.lang.String callType)
           
protected  void generatePostActivate(GeneratedFile adapter)
           
protected  void generatePostConstruct(GeneratedFile adapter)
           
protected  void generatePreDestroy(GeneratedFile adapter)
           
protected  void generatePrePassivate(GeneratedFile adapter)
           
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 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 cuba.util.codegen.AbstractWSAdapterGenerator
generateMethodDeclarator
 
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

WSAdapterGenerator

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

generate

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

generateCoreMethodCall

protected void generateCoreMethodCall(GeneratedFile adapter,
                                      java.lang.reflect.Method method)

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)

generateEnvironmentInjection

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

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

generatePreDestroy

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

generatePostConstruct

protected void generatePostConstruct(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

isVoid

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