org.objectweb.proactive.core.runtime
Class ProActiveRuntimeForwarderImpl

java.lang.Object
  extended byorg.objectweb.proactive.core.event.AbstractEventProducer
      extended byorg.objectweb.proactive.core.event.RuntimeRegistrationEventProducerImpl
          extended byorg.objectweb.proactive.core.runtime.ProActiveRuntimeImpl
              extended byorg.objectweb.proactive.core.runtime.ProActiveRuntimeForwarderImpl
All Implemented Interfaces:
Job, LocalProActiveRuntime, ProActiveRuntime, ProActiveRuntimeForwarder, RuntimeRegistrationEventProducer, SecurityEntity, java.io.Serializable

public class ProActiveRuntimeForwarderImpl
extends ProActiveRuntimeImpl
implements ProActiveRuntimeForwarder, LocalProActiveRuntime

Implementation of ProActiveRuntimeForwarder

Author:
ProActive Team
See Also:
ProActiveRuntimeForwarder, Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.objectweb.proactive.core.runtime.ProActiveRuntimeImpl
ProActiveRuntimeImpl.VMInformationImpl
 
Nested classes inherited from class org.objectweb.proactive.core.event.AbstractEventProducer
AbstractEventProducer.ListenerList
 
Field Summary
protected  java.util.HashMap registeredRuntimes
          All runtimes known by this forwarder
 
Fields inherited from class org.objectweb.proactive.core.event.AbstractEventProducer
eventListeners, logger, shouldSerializeListeners
 
Fields inherited from interface org.objectweb.proactive.core.runtime.ProActiveRuntimeForwarder
runtimeLogger
 
Constructor Summary
protected ProActiveRuntimeForwarderImpl()
           
 
Method Summary
 void addAcquaintance(UniqueRuntimeID urid, java.lang.String proActiveRuntimeName)
           
 UniversalBody createBody(UniqueRuntimeID urid, java.lang.String nodeName, ConstructorCall bodyConstructorCall, boolean isNodeLocal)
           
 java.lang.String createLocalNode(UniqueRuntimeID urid, java.lang.String nodeName, boolean replacePreviousBinding, ProActiveSecurityManager psm, java.lang.String vnName, java.lang.String jobId)
           
 void createVM(UniqueRuntimeID urid, UniversalProcess remoteProcess)
           
 java.lang.String[] getAcquaintances(UniqueRuntimeID urid)
           
 java.util.ArrayList getActiveObjects(UniqueRuntimeID urid, java.lang.String nodeName)
           
 java.util.ArrayList getActiveObjects(UniqueRuntimeID urid, java.lang.String nodeName, java.lang.String className)
           
 BodyAdapterForwarder getBodyAdapterForwarder()
           
 BodyForwarderImpl getBodyForwarder()
           
 java.security.cert.X509Certificate getCertificate(UniqueRuntimeID urid)
           
 byte[] getCertificateEncoded(UniqueRuntimeID urid)
           
 byte[] getClassDataFromParentRuntime(UniqueRuntimeID urid, java.lang.String className)
           
 byte[] getClassDataFromThisRuntime(UniqueRuntimeID urid, java.lang.String className)
           
 ProActiveDescriptor getDescriptor(UniqueRuntimeID urid, java.lang.String url, boolean isHierarchicalSearch)
           
 java.util.ArrayList getEntities(UniqueRuntimeID urid)
           
 java.lang.String getJobID(UniqueRuntimeID urid)
           
 java.lang.String getJobID(UniqueRuntimeID urid, java.lang.String nodeUrl)
           
 java.lang.String[] getLocalNodeNames(UniqueRuntimeID urid)
           
 SecurityContext getPolicy(UniqueRuntimeID urid, SecurityContext sc)
           
 ProActiveRuntime getProActiveRuntime(UniqueRuntimeID urid, java.lang.String proActiveRuntimeName)
           
 ProActiveRuntime[] getProActiveRuntimes(UniqueRuntimeID urid)
           
 ExternalProcess getProcessToDeploy(ProActiveRuntime proActiveRuntimeDist, java.lang.String creatorID, java.lang.String vmName, java.lang.String padURL)
          Ask proActiveRuntimeDist for the process with given ids: padURL, creatorID, vmName.
 ExternalProcess getProcessToDeploy(UniqueRuntimeID urid, ProActiveRuntime proActiveRuntimeDist, java.lang.String creatorID, java.lang.String vmName, java.lang.String padURL)
           
 java.security.PublicKey getPublicKey(UniqueRuntimeID urid)
           
 RemoteBodyForwarder getRemoteBodyForwarder()
           
 java.lang.String getURL(UniqueRuntimeID urid)
           
 VirtualNode getVirtualNode(UniqueRuntimeID urid, java.lang.String virtualNodeName)
           
 VMInformation getVMInformation(UniqueRuntimeID urid)
           
 java.lang.String getVNName(UniqueRuntimeID urid, java.lang.String Nodename)
           
 void killAllNodes(UniqueRuntimeID urid)
           
 void killNode(UniqueRuntimeID urid, java.lang.String nodeName)
           
 void killRT(UniqueRuntimeID urid, boolean softly)
           
 void launchMain(UniqueRuntimeID urid, java.lang.String className, java.lang.String[] parameters)
           
 void newRemote(UniqueRuntimeID urid, java.lang.String className)
           
 byte[][] publicKeyExchange(UniqueRuntimeID urid, long sessionID, byte[] myPublicKey, byte[] myCertificate, byte[] signature)
           
 byte[] randomValue(UniqueRuntimeID urid, long sessionID, byte[] clientRandomValue)
           
 UniversalBody receiveBody(UniqueRuntimeID urid, java.lang.String nodeName, Body body)
           
 UniversalBody receiveCheckpoint(UniqueRuntimeID urid, java.lang.String nodeURL, Checkpoint ckpt, int inc)
           
 void register(ProActiveRuntime proActiveRuntimeDist, java.lang.String proActiveRuntimeName, java.lang.String creatorID, java.lang.String creationProtocol, java.lang.String vmName)
          **For internal use only** Allows this ProActiveRuntime on this VM to register another ProActiveRuntime
 void register(UniqueRuntimeID urid, ProActiveRuntime proActiveRuntimeDist, java.lang.String proActiveRuntimeUrl, java.lang.String creatorID, java.lang.String creationProtocol, java.lang.String rurid)
           
 void registerVirtualNode(UniqueRuntimeID urid, java.lang.String virtualNodeName, boolean replacePreviousBinding)
           
 void rmAcquaintance(UniqueRuntimeID urid, java.lang.String proActiveRuntimeName)
           
 byte[][] secretKeyExchange(UniqueRuntimeID urid, long sessionID, byte[] encodedAESKey, byte[] encodedIVParameters, byte[] encodedClientMacKey, byte[] encodedLockData, byte[] parametersSignature)
           
 void setParent(ProActiveRuntime parentPARuntime)
          This method adds a reference to the runtime that created this runtime.
protected  void setProcessesToDeploy(java.lang.String padURL, java.lang.String vmName, ExternalProcess process)
          Add process to process list to be hierarchically deployed, if we launched a forwarder it will ask for it using register().
 long startNewSession(UniqueRuntimeID urid, Communication policy)
           
 void terminateSession(UniqueRuntimeID urid, long sessionID)
           
 void unregister(UniqueRuntimeID urid, ProActiveRuntime proActiveRuntimeDist, java.lang.String proActiveRuntimeUrl, java.lang.String creatorID, java.lang.String creationProtocol, java.lang.String rurid)
           
 void unregisterAllVirtualNodes(UniqueRuntimeID urid)
           
 void unregisterVirtualNode(UniqueRuntimeID urid, java.lang.String virtualNodeName)
           
 
Methods inherited from class org.objectweb.proactive.core.runtime.ProActiveRuntimeImpl
addAcquaintance, createBody, createLocalNode, createVM, getAcquaintances, getActiveObjects, getActiveObjects, getCertificate, getCertificateEncoded, getClassDataFromParentRuntime, getClassDataFromThisRuntime, getDescriptor, getEntities, getEntities, getEntities, getJobID, getJobID, getLocalNodeNames, getNextInt, getNodePolicyServer, getPolicy, getProActiveRuntime, getProActiveRuntime, getProActiveRuntimes, getProActiveSecurityManager, getPublicKey, getURL, getVirtualNode, getVMInformation, getVNName, killAllNodes, killNode, killRT, launchMain, newRemote, publicKeyExchange, randomValue, receiveBody, receiveCheckpoint, registerDescriptor, registerLocalVirtualNode, registerVirtualNode, removeDescriptor, rmAcquaintance, secretKeyExchange, setDefaultNodeVirtualNodeName, setProActiveSecurityManager, startNewSession, terminateSession, unregister, unregisterAllVirtualNodes, unregisterVirtualNode
 
Methods inherited from class org.objectweb.proactive.core.event.RuntimeRegistrationEventProducerImpl
addRuntimeRegistrationEventListener, notifyListeners, notifyOneListener, removeRuntimeRegistrationEventListener
 
Methods inherited from class org.objectweb.proactive.core.event.AbstractEventProducer
addListener, hasListeners, notifyAllListeners, removeListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.objectweb.proactive.core.runtime.ProActiveRuntime
addAcquaintance, createBody, createLocalNode, createVM, getAcquaintances, getActiveObjects, getActiveObjects, getClassDataFromParentRuntime, getClassDataFromThisRuntime, getDescriptor, getJobID, getLocalNodeNames, getProActiveRuntime, getProActiveRuntimes, getURL, getVirtualNode, getVMInformation, getVNName, killAllNodes, killNode, killRT, launchMain, newRemote, receiveBody, receiveCheckpoint, registerVirtualNode, rmAcquaintance, unregister, unregisterAllVirtualNodes, unregisterVirtualNode
 
Methods inherited from interface org.objectweb.proactive.Job
getJobID
 
Methods inherited from interface org.objectweb.proactive.ext.security.SecurityEntity
getCertificate, getCertificateEncoded, getEntities, getPolicy, getPublicKey, publicKeyExchange, randomValue, secretKeyExchange, startNewSession, terminateSession
 
Methods inherited from interface org.objectweb.proactive.core.runtime.LocalProActiveRuntime
registerLocalVirtualNode
 

Field Detail

registeredRuntimes

protected java.util.HashMap registeredRuntimes
All runtimes known by this forwarder

Constructor Detail

ProActiveRuntimeForwarderImpl

protected ProActiveRuntimeForwarderImpl()
Method Detail

getBodyAdapterForwarder

public BodyAdapterForwarder getBodyAdapterForwarder()

getBodyForwarder

public BodyForwarderImpl getBodyForwarder()

getRemoteBodyForwarder

public RemoteBodyForwarder getRemoteBodyForwarder()

setParent

public void setParent(ProActiveRuntime parentPARuntime)
Description copied from interface: LocalProActiveRuntime
This method adds a reference to the runtime that created this runtime. It is called when a new runtime is created from another one.

Specified by:
setParent in interface LocalProActiveRuntime
Overrides:
setParent in class ProActiveRuntimeImpl
See Also:
LocalProActiveRuntime.setParent(ProActiveRuntime parentPARuntime)

register

public void register(ProActiveRuntime proActiveRuntimeDist,
                     java.lang.String proActiveRuntimeName,
                     java.lang.String creatorID,
                     java.lang.String creationProtocol,
                     java.lang.String vmName)
Description copied from interface: ProActiveRuntime
**For internal use only** Allows this ProActiveRuntime on this VM to register another ProActiveRuntime

Specified by:
register in interface ProActiveRuntime
Overrides:
register in class ProActiveRuntimeImpl
See Also:
ProActiveRuntime.register(ProActiveRuntime, String, String, String, String)

getProcessToDeploy

public ExternalProcess getProcessToDeploy(ProActiveRuntime proActiveRuntimeDist,
                                          java.lang.String creatorID,
                                          java.lang.String vmName,
                                          java.lang.String padURL)
Description copied from interface: ProActiveRuntime
Ask proActiveRuntimeDist for the process with given ids: padURL, creatorID, vmName. Used for hierarchical deployment.

Specified by:
getProcessToDeploy in interface ProActiveRuntime
Overrides:
getProcessToDeploy in class ProActiveRuntimeImpl

setProcessesToDeploy

protected void setProcessesToDeploy(java.lang.String padURL,
                                    java.lang.String vmName,
                                    ExternalProcess process)
Add process to process list to be hierarchically deployed, if we launched a forwarder it will ask for it using register().

Parameters:
padURL - URL of the ProActive Descriptor
vmName - Virtual Machine associated to process
process - The process

createBody

public UniversalBody createBody(UniqueRuntimeID urid,
                                java.lang.String nodeName,
                                ConstructorCall bodyConstructorCall,
                                boolean isNodeLocal)
                         throws ProActiveException,
                                ConstructorCallExecutionFailedException,
                                java.lang.reflect.InvocationTargetException
Specified by:
createBody in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
ConstructorCallExecutionFailedException
java.lang.reflect.InvocationTargetException
See Also:
ProActiveRuntime.createBody(String, ConstructorCall, boolean)

createLocalNode

public java.lang.String createLocalNode(UniqueRuntimeID urid,
                                        java.lang.String nodeName,
                                        boolean replacePreviousBinding,
                                        ProActiveSecurityManager psm,
                                        java.lang.String vnName,
                                        java.lang.String jobId)
                                 throws NodeException
Specified by:
createLocalNode in interface ProActiveRuntimeForwarder
Throws:
NodeException
See Also:
ProActiveRuntime.createLocalNode(String, boolean, ProActiveSecurityManager, String, String)

killAllNodes

public void killAllNodes(UniqueRuntimeID urid)
                  throws ProActiveException
Specified by:
killAllNodes in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.killAllNodes()

killNode

public void killNode(UniqueRuntimeID urid,
                     java.lang.String nodeName)
              throws ProActiveException
Specified by:
killNode in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.killNode(String)

createVM

public void createVM(UniqueRuntimeID urid,
                     UniversalProcess remoteProcess)
              throws java.io.IOException,
                     ProActiveException
Specified by:
createVM in interface ProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException
See Also:
ProActiveRuntime.createVM(UniversalProcess)

getLocalNodeNames

public java.lang.String[] getLocalNodeNames(UniqueRuntimeID urid)
                                     throws ProActiveException
Specified by:
getLocalNodeNames in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getLocalNodeNames()

getVMInformation

public VMInformation getVMInformation(UniqueRuntimeID urid)
Specified by:
getVMInformation in interface ProActiveRuntimeForwarder
See Also:
ProActiveRuntime.getVMInformation()

register

public void register(UniqueRuntimeID urid,
                     ProActiveRuntime proActiveRuntimeDist,
                     java.lang.String proActiveRuntimeUrl,
                     java.lang.String creatorID,
                     java.lang.String creationProtocol,
                     java.lang.String rurid)
              throws ProActiveException
Specified by:
register in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.register(ProActiveRuntime, String, String, String, String)

unregister

public void unregister(UniqueRuntimeID urid,
                       ProActiveRuntime proActiveRuntimeDist,
                       java.lang.String proActiveRuntimeUrl,
                       java.lang.String creatorID,
                       java.lang.String creationProtocol,
                       java.lang.String rurid)
                throws ProActiveException
Specified by:
unregister in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.unregister(ProActiveRuntime, String, String, String, String)

getProActiveRuntimes

public ProActiveRuntime[] getProActiveRuntimes(UniqueRuntimeID urid)
                                        throws ProActiveException
Specified by:
getProActiveRuntimes in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getProActiveRuntimes()

getProActiveRuntime

public ProActiveRuntime getProActiveRuntime(UniqueRuntimeID urid,
                                            java.lang.String proActiveRuntimeName)
                                     throws ProActiveException
Specified by:
getProActiveRuntime in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getProActiveRuntime(String)

addAcquaintance

public void addAcquaintance(UniqueRuntimeID urid,
                            java.lang.String proActiveRuntimeName)
                     throws ProActiveException
Specified by:
addAcquaintance in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.addAcquaintance(String)

getAcquaintances

public java.lang.String[] getAcquaintances(UniqueRuntimeID urid)
                                    throws ProActiveException
Specified by:
getAcquaintances in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getAcquaintances()

rmAcquaintance

public void rmAcquaintance(UniqueRuntimeID urid,
                           java.lang.String proActiveRuntimeName)
                    throws ProActiveException
Specified by:
rmAcquaintance in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.rmAcquaintance(String)

killRT

public void killRT(UniqueRuntimeID urid,
                   boolean softly)
            throws java.lang.Exception
Specified by:
killRT in interface ProActiveRuntimeForwarder
Throws:
java.lang.Exception
See Also:
ProActiveRuntime.killRT(boolean)

getURL

public java.lang.String getURL(UniqueRuntimeID urid)
Specified by:
getURL in interface ProActiveRuntimeForwarder
See Also:
ProActiveRuntime.getURL()

getActiveObjects

public java.util.ArrayList getActiveObjects(UniqueRuntimeID urid,
                                            java.lang.String nodeName)
                                     throws ProActiveException
Specified by:
getActiveObjects in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getActiveObjects(String)

getActiveObjects

public java.util.ArrayList getActiveObjects(UniqueRuntimeID urid,
                                            java.lang.String nodeName,
                                            java.lang.String className)
                                     throws ProActiveException
Specified by:
getActiveObjects in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getActiveObjects(String, String)

getVirtualNode

public VirtualNode getVirtualNode(UniqueRuntimeID urid,
                                  java.lang.String virtualNodeName)
                           throws ProActiveException
Specified by:
getVirtualNode in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getVirtualNode(String)

registerVirtualNode

public void registerVirtualNode(UniqueRuntimeID urid,
                                java.lang.String virtualNodeName,
                                boolean replacePreviousBinding)
                         throws ProActiveException
Specified by:
registerVirtualNode in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.registerVirtualNode(String, boolean)

unregisterVirtualNode

public void unregisterVirtualNode(UniqueRuntimeID urid,
                                  java.lang.String virtualNodeName)
                           throws ProActiveException
Specified by:
unregisterVirtualNode in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.unregisterVirtualNode(String)

unregisterAllVirtualNodes

public void unregisterAllVirtualNodes(UniqueRuntimeID urid)
                               throws ProActiveException
Specified by:
unregisterAllVirtualNodes in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.unregisterAllVirtualNodes()

getJobID

public java.lang.String getJobID(UniqueRuntimeID urid,
                                 java.lang.String nodeUrl)
                          throws ProActiveException
Specified by:
getJobID in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getJobID(String)

receiveBody

public UniversalBody receiveBody(UniqueRuntimeID urid,
                                 java.lang.String nodeName,
                                 Body body)
                          throws ProActiveException
Specified by:
receiveBody in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.receiveBody(String, Body)

receiveCheckpoint

public UniversalBody receiveCheckpoint(UniqueRuntimeID urid,
                                       java.lang.String nodeURL,
                                       Checkpoint ckpt,
                                       int inc)
                                throws ProActiveException
Specified by:
receiveCheckpoint in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.receiveCheckpoint(String, Checkpoint, int)

getProcessToDeploy

public ExternalProcess getProcessToDeploy(UniqueRuntimeID urid,
                                          ProActiveRuntime proActiveRuntimeDist,
                                          java.lang.String creatorID,
                                          java.lang.String vmName,
                                          java.lang.String padURL)
                                   throws ProActiveException
Specified by:
getProcessToDeploy in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getProcessToDeploy(ProActiveRuntime, String, String, String)

getVNName

public java.lang.String getVNName(UniqueRuntimeID urid,
                                  java.lang.String Nodename)
                           throws ProActiveException
Specified by:
getVNName in interface ProActiveRuntimeForwarder
Throws:
ProActiveException

getEntities

public java.util.ArrayList getEntities(UniqueRuntimeID urid)
                                throws java.io.IOException,
                                       SecurityNotAvailableException
Specified by:
getEntities in interface ProActiveRuntimeForwarder
Throws:
java.io.IOException
SecurityNotAvailableException

getPolicy

public SecurityContext getPolicy(UniqueRuntimeID urid,
                                 SecurityContext sc)
                          throws SecurityNotAvailableException,
                                 java.io.IOException
Specified by:
getPolicy in interface ProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
java.io.IOException

getClassDataFromThisRuntime

public byte[] getClassDataFromThisRuntime(UniqueRuntimeID urid,
                                          java.lang.String className)
                                   throws ProActiveException
Specified by:
getClassDataFromThisRuntime in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getClassDataFromThisRuntime(String)

getClassDataFromParentRuntime

public byte[] getClassDataFromParentRuntime(UniqueRuntimeID urid,
                                            java.lang.String className)
                                     throws ProActiveException
Specified by:
getClassDataFromParentRuntime in interface ProActiveRuntimeForwarder
Throws:
ProActiveException
See Also:
ProActiveRuntime.getClassDataFromParentRuntime(String)

getCertificate

public java.security.cert.X509Certificate getCertificate(UniqueRuntimeID urid)
                                                  throws SecurityNotAvailableException,
                                                         java.io.IOException
Specified by:
getCertificate in interface ProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
java.io.IOException

getCertificateEncoded

public byte[] getCertificateEncoded(UniqueRuntimeID urid)
                             throws SecurityNotAvailableException,
                                    java.io.IOException
Specified by:
getCertificateEncoded in interface ProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
java.io.IOException

getPublicKey

public java.security.PublicKey getPublicKey(UniqueRuntimeID urid)
                                     throws SecurityNotAvailableException,
                                            java.io.IOException
Specified by:
getPublicKey in interface ProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
java.io.IOException

publicKeyExchange

public byte[][] publicKeyExchange(UniqueRuntimeID urid,
                                  long sessionID,
                                  byte[] myPublicKey,
                                  byte[] myCertificate,
                                  byte[] signature)
                           throws SecurityNotAvailableException,
                                  RenegotiateSessionException,
                                  KeyExchangeException,
                                  java.io.IOException
Specified by:
publicKeyExchange in interface ProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
RenegotiateSessionException
KeyExchangeException
java.io.IOException

randomValue

public byte[] randomValue(UniqueRuntimeID urid,
                          long sessionID,
                          byte[] clientRandomValue)
                   throws SecurityNotAvailableException,
                          RenegotiateSessionException,
                          java.io.IOException
Specified by:
randomValue in interface ProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
RenegotiateSessionException
java.io.IOException

secretKeyExchange

public byte[][] secretKeyExchange(UniqueRuntimeID urid,
                                  long sessionID,
                                  byte[] encodedAESKey,
                                  byte[] encodedIVParameters,
                                  byte[] encodedClientMacKey,
                                  byte[] encodedLockData,
                                  byte[] parametersSignature)
                           throws SecurityNotAvailableException,
                                  RenegotiateSessionException,
                                  java.io.IOException
Specified by:
secretKeyExchange in interface ProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
RenegotiateSessionException
java.io.IOException

startNewSession

public long startNewSession(UniqueRuntimeID urid,
                            Communication policy)
                     throws SecurityNotAvailableException,
                            RenegotiateSessionException,
                            java.io.IOException
Specified by:
startNewSession in interface ProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
RenegotiateSessionException
java.io.IOException

terminateSession

public void terminateSession(UniqueRuntimeID urid,
                             long sessionID)
                      throws SecurityNotAvailableException,
                             java.io.IOException
Specified by:
terminateSession in interface ProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
java.io.IOException

getDescriptor

public ProActiveDescriptor getDescriptor(UniqueRuntimeID urid,
                                         java.lang.String url,
                                         boolean isHierarchicalSearch)
                                  throws java.io.IOException,
                                         ProActiveException
Specified by:
getDescriptor in interface ProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getJobID

public java.lang.String getJobID(UniqueRuntimeID urid)
Specified by:
getJobID in interface ProActiveRuntimeForwarder

launchMain

public void launchMain(UniqueRuntimeID urid,
                       java.lang.String className,
                       java.lang.String[] parameters)
                throws java.lang.ClassNotFoundException,
                       java.lang.NoSuchMethodException,
                       ProActiveException
Specified by:
launchMain in interface ProActiveRuntimeForwarder
Throws:
java.lang.ClassNotFoundException
java.lang.NoSuchMethodException
ProActiveException
See Also:
ProActiveRuntime.launchMain(String, String[])

newRemote

public void newRemote(UniqueRuntimeID urid,
                      java.lang.String className)
               throws java.lang.ClassNotFoundException,
                      ProActiveException
Specified by:
newRemote in interface ProActiveRuntimeForwarder
Throws:
java.lang.ClassNotFoundException
ProActiveException
See Also:
ProActiveRuntime.newRemote(String)


Copyright 2001-2005 INRIA All Rights Reserved.