org.objectweb.proactive.core.runtime.rmi
Class RmiProActiveRuntimeForwarderImpl

java.lang.Object
  extended byjava.rmi.server.RemoteObject
      extended byjava.rmi.server.RemoteServer
          extended byjava.rmi.server.UnicastRemoteObject
              extended byorg.objectweb.proactive.core.runtime.rmi.RmiProActiveRuntimeImpl
                  extended byorg.objectweb.proactive.core.runtime.rmi.RmiProActiveRuntimeForwarderImpl
All Implemented Interfaces:
java.rmi.Remote, RemoteProActiveRuntime, RemoteProActiveRuntimeForwarder, RmiProActiveRuntime, RmiProActiveRuntimeForwarder, java.io.Serializable
Direct Known Subclasses:
RmiSshProActiveRuntimeForwarder

public class RmiProActiveRuntimeForwarderImpl
extends RmiProActiveRuntimeImpl
implements RmiProActiveRuntimeForwarder

See Also:
Serialized Form

Field Summary
protected  ProActiveRuntimeForwarder proActiveRuntimeF
           
 
Fields inherited from class org.objectweb.proactive.core.runtime.rmi.RmiProActiveRuntimeImpl
proActiveRuntime, proActiveRuntimeURL
 
Fields inherited from class java.rmi.server.RemoteObject
ref
 
Fields inherited from interface org.objectweb.proactive.core.runtime.RemoteProActiveRuntime
runtimeLogger
 
Fields inherited from interface org.objectweb.proactive.core.runtime.RemoteProActiveRuntimeForwarder
runtimeLogger
 
Constructor Summary
RmiProActiveRuntimeForwarderImpl()
           
RmiProActiveRuntimeForwarderImpl(boolean isJini)
           
RmiProActiveRuntimeForwarderImpl(java.rmi.server.RMIClientSocketFactory csf, java.rmi.server.RMIServerSocketFactory ssf)
           
 
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 ps, 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 objectName)
           
 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 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(UniqueRuntimeID urid, ProActiveRuntime proActiveRuntimeDist, java.lang.String creatorID, java.lang.String vmName, java.lang.String padURL)
           
 java.security.PublicKey getPublicKey(UniqueRuntimeID urid)
           
 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 nodeName, Checkpoint ckpt, int inc)
           
 void register(UniqueRuntimeID urid, ProActiveRuntime proActiveRuntimeDist, java.lang.String proActiveRuntimeName, java.lang.String creatorID, java.lang.String creationProtocol, java.lang.String vmName)
           
 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)
           
 long startNewSession(UniqueRuntimeID urid, Communication policy)
           
 void terminateSession(UniqueRuntimeID urid, long sessionID)
           
 void unregister(UniqueRuntimeID urid, ProActiveRuntime proActiveRuntimeDist, java.lang.String proActiveRuntimeName, java.lang.String creatorID, java.lang.String creationProtocol, java.lang.String vmName)
           
 void unregisterAllVirtualNodes(UniqueRuntimeID urid)
           
 void unregisterVirtualNode(UniqueRuntimeID urid, java.lang.String virtualNodeName)
           
 
Methods inherited from class org.objectweb.proactive.core.runtime.rmi.RmiProActiveRuntimeImpl
addAcquaintance, createBody, createLocalNode, createVM, getAcquaintances, getActiveObjects, getActiveObjects, getCertificate, getCertificateEncoded, getClassDataFromParentRuntime, getClassDataFromThisRuntime, getDescriptor, getEntities, getJobID, getLocalNodeNames, getPolicy, getProActiveRuntime, getProActiveRuntimes, getProcessToDeploy, getProtocol, getPublicKey, getURL, getVirtualNode, getVMInformation, getVNName, killAllNodes, killNode, killRT, launchMain, newRemote, publicKeyExchange, randomValue, receiveBody, receiveCheckpoint, register, registerVirtualNode, rmAcquaintance, secretKeyExchange, startNewSession, terminateSession, unregister, unregisterAllVirtualNodes, unregisterVirtualNode
 
Methods inherited from class java.rmi.server.UnicastRemoteObject
clone, exportObject, exportObject, exportObject, unexportObject
 
Methods inherited from class java.rmi.server.RemoteServer
getClientHost, getLog, setLog
 
Methods inherited from class java.rmi.server.RemoteObject
equals, getRef, hashCode, toString, toStub
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.objectweb.proactive.core.runtime.RemoteProActiveRuntime
addAcquaintance, createBody, createLocalNode, createVM, getAcquaintances, getActiveObjects, getActiveObjects, getCertificate, getCertificateEncoded, getClassDataFromParentRuntime, getClassDataFromThisRuntime, getDescriptor, getEntities, getJobID, getLocalNodeNames, getPolicy, getProActiveRuntime, getProActiveRuntimes, getProcessToDeploy, getPublicKey, getURL, getVirtualNode, getVMInformation, getVNName, killAllNodes, killNode, killRT, launchMain, newRemote, publicKeyExchange, randomValue, receiveBody, receiveCheckpoint, register, registerVirtualNode, rmAcquaintance, secretKeyExchange, startNewSession, terminateSession, unregister, unregisterAllVirtualNodes, unregisterVirtualNode
 

Field Detail

proActiveRuntimeF

protected transient ProActiveRuntimeForwarder proActiveRuntimeF
Constructor Detail

RmiProActiveRuntimeForwarderImpl

public RmiProActiveRuntimeForwarderImpl()
                                 throws java.rmi.RemoteException,
                                        java.rmi.AlreadyBoundException

RmiProActiveRuntimeForwarderImpl

public RmiProActiveRuntimeForwarderImpl(boolean isJini)
                                 throws java.rmi.RemoteException

RmiProActiveRuntimeForwarderImpl

public RmiProActiveRuntimeForwarderImpl(java.rmi.server.RMIClientSocketFactory csf,
                                        java.rmi.server.RMIServerSocketFactory ssf)
                                 throws java.rmi.RemoteException,
                                        java.rmi.AlreadyBoundException
Method Detail

addAcquaintance

public void addAcquaintance(UniqueRuntimeID urid,
                            java.lang.String proActiveRuntimeName)
                     throws java.io.IOException,
                            ProActiveException
Specified by:
addAcquaintance in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

createBody

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

createLocalNode

public java.lang.String createLocalNode(UniqueRuntimeID urid,
                                        java.lang.String nodeName,
                                        boolean replacePreviousBinding,
                                        ProActiveSecurityManager ps,
                                        java.lang.String VNname,
                                        java.lang.String jobId)
                                 throws java.io.IOException,
                                        NodeException
Specified by:
createLocalNode in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
NodeException

createVM

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

getAcquaintances

public java.lang.String[] getAcquaintances(UniqueRuntimeID urid)
                                    throws java.io.IOException,
                                           ProActiveException
Specified by:
getAcquaintances in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getActiveObjects

public java.util.ArrayList getActiveObjects(UniqueRuntimeID urid,
                                            java.lang.String nodeName,
                                            java.lang.String objectName)
                                     throws java.io.IOException,
                                            ProActiveException
Specified by:
getActiveObjects in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getActiveObjects

public java.util.ArrayList getActiveObjects(UniqueRuntimeID urid,
                                            java.lang.String nodeName)
                                     throws java.io.IOException,
                                            ProActiveException
Specified by:
getActiveObjects in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getClassDataFromParentRuntime

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

getClassDataFromThisRuntime

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

getEntities

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

getJobID

public java.lang.String getJobID(UniqueRuntimeID urid,
                                 java.lang.String nodeUrl)
                          throws java.io.IOException,
                                 ProActiveException
Specified by:
getJobID in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getLocalNodeNames

public java.lang.String[] getLocalNodeNames(UniqueRuntimeID urid)
                                     throws java.io.IOException,
                                            ProActiveException
Specified by:
getLocalNodeNames in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getPolicy

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

getProActiveRuntime

public ProActiveRuntime getProActiveRuntime(UniqueRuntimeID urid,
                                            java.lang.String proActiveRuntimeName)
                                     throws java.io.IOException,
                                            ProActiveException
Specified by:
getProActiveRuntime in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getProActiveRuntimes

public ProActiveRuntime[] getProActiveRuntimes(UniqueRuntimeID urid)
                                        throws java.io.IOException,
                                               ProActiveException
Specified by:
getProActiveRuntimes in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getProcessToDeploy

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

getURL

public java.lang.String getURL(UniqueRuntimeID urid)
                        throws java.io.IOException,
                               ProActiveException
Specified by:
getURL in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getVirtualNode

public VirtualNode getVirtualNode(UniqueRuntimeID urid,
                                  java.lang.String virtualNodeName)
                           throws java.io.IOException,
                                  ProActiveException
Specified by:
getVirtualNode in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getVMInformation

public VMInformation getVMInformation(UniqueRuntimeID urid)
                               throws java.io.IOException
Specified by:
getVMInformation in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException

getVNName

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

killAllNodes

public void killAllNodes(UniqueRuntimeID urid)
                  throws java.io.IOException,
                         ProActiveException
Specified by:
killAllNodes in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

killNode

public void killNode(UniqueRuntimeID urid,
                     java.lang.String nodeName)
              throws java.io.IOException,
                     ProActiveException
Specified by:
killNode in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

killRT

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

receiveBody

public UniversalBody receiveBody(UniqueRuntimeID urid,
                                 java.lang.String nodeName,
                                 Body body)
                          throws java.io.IOException,
                                 ProActiveException
Specified by:
receiveBody in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

receiveCheckpoint

public UniversalBody receiveCheckpoint(UniqueRuntimeID urid,
                                       java.lang.String nodeName,
                                       Checkpoint ckpt,
                                       int inc)
                                throws java.io.IOException,
                                       ProActiveException
Specified by:
receiveCheckpoint in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

register

public void register(UniqueRuntimeID urid,
                     ProActiveRuntime proActiveRuntimeDist,
                     java.lang.String proActiveRuntimeName,
                     java.lang.String creatorID,
                     java.lang.String creationProtocol,
                     java.lang.String vmName)
              throws java.io.IOException,
                     ProActiveException
Specified by:
register in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

registerVirtualNode

public void registerVirtualNode(UniqueRuntimeID urid,
                                java.lang.String virtualNodeName,
                                boolean replacePreviousBinding)
                         throws java.io.IOException,
                                ProActiveException
Specified by:
registerVirtualNode in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

rmAcquaintance

public void rmAcquaintance(UniqueRuntimeID urid,
                           java.lang.String proActiveRuntimeName)
                    throws java.io.IOException,
                           ProActiveException
Specified by:
rmAcquaintance in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

unregister

public void unregister(UniqueRuntimeID urid,
                       ProActiveRuntime proActiveRuntimeDist,
                       java.lang.String proActiveRuntimeName,
                       java.lang.String creatorID,
                       java.lang.String creationProtocol,
                       java.lang.String vmName)
                throws java.io.IOException,
                       ProActiveException
Specified by:
unregister in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

unregisterAllVirtualNodes

public void unregisterAllVirtualNodes(UniqueRuntimeID urid)
                               throws java.io.IOException,
                                      ProActiveException
Specified by:
unregisterAllVirtualNodes in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

unregisterVirtualNode

public void unregisterVirtualNode(UniqueRuntimeID urid,
                                  java.lang.String virtualNodeName)
                           throws java.io.IOException,
                                  ProActiveException
Specified by:
unregisterVirtualNode in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getCertificate

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

getCertificateEncoded

public byte[] getCertificateEncoded(UniqueRuntimeID urid)
                             throws SecurityNotAvailableException,
                                    java.io.IOException
Specified by:
getCertificateEncoded in interface RemoteProActiveRuntimeForwarder
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 RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
ProActiveException

getPublicKey

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

launchMain

public void launchMain(UniqueRuntimeID urid,
                       java.lang.String className,
                       java.lang.String[] parameters)
                throws java.io.IOException,
                       java.lang.ClassNotFoundException,
                       java.lang.NoSuchMethodException,
                       ProActiveException
Specified by:
launchMain in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
java.lang.ClassNotFoundException
java.lang.NoSuchMethodException
ProActiveException

newRemote

public void newRemote(UniqueRuntimeID urid,
                      java.lang.String className)
               throws java.io.IOException,
                      java.lang.ClassNotFoundException,
                      ProActiveException
Specified by:
newRemote in interface RemoteProActiveRuntimeForwarder
Throws:
java.io.IOException
java.lang.ClassNotFoundException
ProActiveException

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 RemoteProActiveRuntimeForwarder
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 RemoteProActiveRuntimeForwarder
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 RemoteProActiveRuntimeForwarder
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 RemoteProActiveRuntimeForwarder
Throws:
SecurityNotAvailableException
RenegotiateSessionException
java.io.IOException

terminateSession

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


Copyright 2001-2005 INRIA All Rights Reserved.