wrapper
Class Connection

java.lang.Object
  |
  +--wrapper.Connection

final class Connection
extends java.lang.Object


Field Summary
private  ParamValueTable clientParams
           
private  java.util.Map clientParamsStatus
          Status of the client parameters.
protected  java.lang.Integer connectionId
          Id of this connection.
private  java.util.Map invocations
          List of all the invocations of this connection.
protected  CPAMMegamodule parent
          Pointer to the parent megamodule.
private  java.util.Random random
          Random number generator for generating the invocation ids.
 
Constructor Summary
(package private) Connection(ParamValueTable defaultParams, CPAMMegamodule megamodule, java.lang.Integer connectionId)
           
 
Method Summary
(package private)  Invocation createInvocation(java.lang.String methodname)
           
(package private)  ParamValueTableReader getClientParams()
           
(package private)  boolean getEstimates(java.lang.String methodname, Estimates estimates)
           
(package private)  Invocation getInvocation(java.lang.Integer invocationId)
           
(package private)  java.lang.Object getParam(java.lang.String name)
           
(package private)  void invocationTerminated(java.lang.Integer invocationId)
           
(package private)  void terminate()
           
(package private)  void updateParam(java.lang.String name, java.lang.Object value)
           
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

clientParams

private ParamValueTable clientParams

clientParamsStatus

private java.util.Map clientParamsStatus
Status of the client parameters. Contains all the parameter names as the table clientParams, and maps them to integers. Possible values are:
1: default setting of megamodule
2: client-specific setting (after a SETPARAM)

invocations

private java.util.Map invocations
List of all the invocations of this connection. It maps invocationids to invocation objects.

parent

protected CPAMMegamodule parent
Pointer to the parent megamodule.

connectionId

protected final java.lang.Integer connectionId
Id of this connection. This id is unique and cannot be changed after the creation of the connection. The connection id is created by the wrapper, not by the client accessing the megamodule. If the client itself also creates connection or client ids, these have to be mapped into the connection id of the wrapper in the subclass of CPAMInterface. Yet our approach is cleaner, it allows one client to have several connections to the same megamodule (e.g. for web browsers), and it avoids coincidentally equal client ids from different clients.

random

private java.util.Random random
Random number generator for generating the invocation ids.
Constructor Detail

Connection

Connection(ParamValueTable defaultParams,
           CPAMMegamodule megamodule,
           java.lang.Integer connectionId)
Method Detail

getClientParams

ParamValueTableReader getClientParams()

getInvocation

Invocation getInvocation(java.lang.Integer invocationId)

updateParam

void updateParam(java.lang.String name,
                 java.lang.Object value)

getParam

java.lang.Object getParam(java.lang.String name)

createInvocation

Invocation createInvocation(java.lang.String methodname)

invocationTerminated

void invocationTerminated(java.lang.Integer invocationId)

getEstimates

boolean getEstimates(java.lang.String methodname,
                     Estimates estimates)

terminate

void terminate()