gov.llnl.babel.backend.rmi
Class RMI

java.lang.Object
  extended by gov.llnl.babel.backend.rmi.RMI

public class RMI
extends java.lang.Object


Constructor Summary
RMI()
           
 
Method Summary
static Class generateAnonymousClass(Interface ifc)
          generateAnonymousClass takes an interface, and generates the corrosponding anonymous class.
static java.lang.String getMethodExtension(Type t)
          generate the proper method extension for packing or unpacking
static java.lang.String packArg(java.lang.String packer_typename, java.lang.String packer_varname, Argument arg)
          generate the method call to pack an argument
static java.lang.String packType(java.lang.String packer_typename, java.lang.String packer_varname, Type type, java.lang.String varname, java.lang.String var)
          backwards compatible....
static java.lang.String packType(java.lang.String packer_typename, java.lang.String packer_varname, Type type, java.lang.String varname, java.lang.String var, int mode, boolean isCopy)
          generate the method call to pack a type
static java.lang.String unpackArg(java.lang.String packer_typename, java.lang.String packer_varname, Argument arg)
          generate the method call to unpack an argument
static java.lang.String unpackType(java.lang.String packer_typename, java.lang.String packer_varname, Type type, java.lang.String varname, java.lang.String var)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RMI

public RMI()
Method Detail

packArg

public static java.lang.String packArg(java.lang.String packer_typename,
                                       java.lang.String packer_varname,
                                       Argument arg)
generate the method call to pack an argument


packType

public static java.lang.String packType(java.lang.String packer_typename,
                                        java.lang.String packer_varname,
                                        Type type,
                                        java.lang.String varname,
                                        java.lang.String var)
backwards compatible....


packType

public static java.lang.String packType(java.lang.String packer_typename,
                                        java.lang.String packer_varname,
                                        Type type,
                                        java.lang.String varname,
                                        java.lang.String var,
                                        int mode,
                                        boolean isCopy)
generate the method call to pack a type

Parameters:
packer_typename - The string name of the type that implements from sidl.io.Serializer
packer_varname - The variable (instance) name of the type that implements sidl.io.Serializer
type - The type to be packed
varname - The name of the variable to be packed
var - Same as varname with possible derefencing based on mode
Returns:
A string containing the proper

unpackArg

public static java.lang.String unpackArg(java.lang.String packer_typename,
                                         java.lang.String packer_varname,
                                         Argument arg)
generate the method call to unpack an argument

Parameters:
packer_typename -
packer_varname -
arg -
Returns:

unpackType

public static java.lang.String unpackType(java.lang.String packer_typename,
                                          java.lang.String packer_varname,
                                          Type type,
                                          java.lang.String varname,
                                          java.lang.String var)
Parameters:
packer_typename -
packer_varname -
type -
varname -
var -
Returns:

getMethodExtension

public static java.lang.String getMethodExtension(Type t)
generate the proper method extension for packing or unpacking

Parameters:
t -
Returns:

generateAnonymousClass

public static Class generateAnonymousClass(Interface ifc)
                                    throws CodeGenerationException
generateAnonymousClass takes an interface, and generates the corrosponding anonymous class. This anonymous class is only used to connect an interface remotely.

Throws:
CodeGenerationException