TPTP 4.4.0 Platform Project
Public API Specification

org.eclipse.hyades.execution.remote
Class RemoteObjectSkeleton

java.lang.Object
  extended byorg.eclipse.hyades.execution.remote.RemoteObjectSkeleton
All Implemented Interfaces:
IRemoteObject
Direct Known Subclasses:
ExecutableObjectSkeleton, ExecutionComponentSkeleton

public abstract class RemoteObjectSkeleton
extends java.lang.Object
implements IRemoteObject

This is the parent of the hierarchy of skeletons -- objects to which remote method invocations are delegated and which then delegate the method implementations to their delegate objects.


Field Summary
protected  java.lang.Object delegate
          the object for which this skeleton is providing remote execution semantics
protected  ISession sessionContext
          the session context of a remote object is (should be) the same as that of the factory that created the remote object
protected  java.lang.Integer uniqueId
          a unique identifier used to reference this skeleton (and hence the target object)
 
Constructor Summary
protected RemoteObjectSkeleton()
           
  RemoteObjectSkeleton(java.lang.Integer id)
          Create a skeleton, associating the specified id with the instance (and hence the target object).
 
Method Summary
 ReturnData delegateRemoteCall(java.lang.Class[] argTypes, java.lang.Object[] callArgs, java.lang.String call)
           
 java.lang.Object getDelegate()
           
 ISession getSessionContext()
           
 java.lang.Integer getUniqueId()
           
 void init()
           
 void setDelegate(java.lang.Object delegate)
           
 void setId(java.lang.Integer id)
          Set the unique id that identifies this instance (and hence the target object).
 void setSessionContext(ISession session)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

uniqueId

protected java.lang.Integer uniqueId
a unique identifier used to reference this skeleton (and hence the target object)


sessionContext

protected ISession sessionContext
the session context of a remote object is (should be) the same as that of the factory that created the remote object


delegate

protected java.lang.Object delegate
the object for which this skeleton is providing remote execution semantics

Constructor Detail

RemoteObjectSkeleton

protected RemoteObjectSkeleton()

RemoteObjectSkeleton

public RemoteObjectSkeleton(java.lang.Integer id)
Create a skeleton, associating the specified id with the instance (and hence the target object).

Parameters:
id -
Method Detail

setId

public void setId(java.lang.Integer id)
Set the unique id that identifies this instance (and hence the target object). This only needs to be done locally.

Parameters:
id -

getUniqueId

public java.lang.Integer getUniqueId()
Specified by:
getUniqueId in interface IRemoteObject
See Also:
IRemoteObject.getUniqueId()

delegateRemoteCall

public ReturnData delegateRemoteCall(java.lang.Class[] argTypes,
                                     java.lang.Object[] callArgs,
                                     java.lang.String call)
                              throws RemoteInvocationException
Specified by:
delegateRemoteCall in interface IRemoteObject
Throws:
RemoteInvocationException
See Also:
IRemoteObject.delegateRemoteCall(java.lang.Class[], java.lang.Object[], java.lang.String)

getDelegate

public java.lang.Object getDelegate()
Specified by:
getDelegate in interface IRemoteObject
See Also:
IRemoteObject.getDelegate()

setDelegate

public void setDelegate(java.lang.Object delegate)
Specified by:
setDelegate in interface IRemoteObject
See Also:
IRemoteObject.setDelegate(java.lang.Object)

init

public void init()
Specified by:
init in interface IRemoteObject
See Also:
IRemoteObject.init()

getSessionContext

public ISession getSessionContext()
Specified by:
getSessionContext in interface IRemoteObject
See Also:
IRemoteObject.getSessionContext()

setSessionContext

public void setSessionContext(ISession session)
Specified by:
setSessionContext in interface IRemoteObject
See Also:
IRemoteObject.setSessionContext(org.eclipse.hyades.execution.core.ISession)

TPTP 4.4.0 Platform Project
Public API Specification