org.objectweb.proactive.core.runtime
Interface RemoteProActiveRuntime

All Superinterfaces:
java.io.Serializable
All Known Subinterfaces:
IbisProActiveRuntime, RemoteProActiveRuntimeForwarder, RmiProActiveRuntime, RmiProActiveRuntimeForwarder
All Known Implementing Classes:
HttpProActiveRuntime, IbisProActiveRuntimeImpl, JiniRuntimeImpl, RmiProActiveRuntimeForwarderImpl, RmiProActiveRuntimeImpl

public interface RemoteProActiveRuntime
extends java.io.Serializable

An adapter for a ProActiveRuntime to be able to receive remote calls. This helps isolate protocol-specific code into a small set of specific classes, thus enabling reuse when using another remote objects library. Implemented protocols are RMI, RMISSH, IBIS, JINI, HTTP

Since:
ProActive 2.2
Version:
1.0
Author:
ProActiveTeam
See Also:
Adapter Pattern

Field Summary
static org.apache.log4j.Logger runtimeLogger
           
 
Method Summary
 void addAcquaintance(java.lang.String proActiveRuntimeName)
           
 UniversalBody createBody(java.lang.String nodeName, ConstructorCall bodyConstructorCall, boolean isNodeLocal)
           
 java.lang.String createLocalNode(java.lang.String nodeName, boolean replacePreviousBinding, ProActiveSecurityManager securityManager, java.lang.String VNname, java.lang.String jobId)
           
 void createVM(UniversalProcess remoteProcess)
           
 java.lang.String[] getAcquaintances()
           
 java.util.ArrayList getActiveObjects(java.lang.String nodeName)
           
 java.util.ArrayList getActiveObjects(java.lang.String nodeName, java.lang.String objectName)
           
 java.security.cert.X509Certificate getCertificate()
           
 byte[] getCertificateEncoded()
           
 byte[] getClassDataFromParentRuntime(java.lang.String className)
           
 byte[] getClassDataFromThisRuntime(java.lang.String className)
           
 ProActiveDescriptor getDescriptor(java.lang.String url, boolean isHierarchicalSearch)
           
 java.util.ArrayList getEntities()
           
 java.lang.String getJobID(java.lang.String nodeUrl)
           
 java.lang.String[] getLocalNodeNames()
           
 SecurityContext getPolicy(SecurityContext securityContext)
           
 ProActiveRuntime getProActiveRuntime(java.lang.String proActiveRuntimeName)
           
 ProActiveRuntime[] getProActiveRuntimes()
           
 ExternalProcess getProcessToDeploy(ProActiveRuntime proActiveRuntimeDist, java.lang.String creatorID, java.lang.String vmName, java.lang.String padURL)
           
 java.security.PublicKey getPublicKey()
           
 java.lang.String getURL()
           
 VirtualNode getVirtualNode(java.lang.String virtualNodeName)
           
 VMInformation getVMInformation()
           
 java.lang.String getVNName(java.lang.String Nodename)
           
 void killAllNodes()
           
 void killNode(java.lang.String nodeName)
           
 void killRT(boolean softly)
           
 void launchMain(java.lang.String className, java.lang.String[] parameters)
           
 void newRemote(java.lang.String className)
           
 byte[][] publicKeyExchange(long sessionID, byte[] myPublicKey, byte[] myCertificate, byte[] signature)
           
 byte[] randomValue(long sessionID, byte[] clientRandomValue)
           
 UniversalBody receiveBody(java.lang.String nodeName, Body body)
           
 UniversalBody receiveCheckpoint(java.lang.String nodeName, Checkpoint ckpt, int inc)
           
 void register(ProActiveRuntime proActiveRuntimeDist, java.lang.String proActiveRuntimeName, java.lang.String creatorID, java.lang.String creationProtocol, java.lang.String vmName)
           
 void registerVirtualNode(java.lang.String virtualNodeName, boolean replacePreviousBinding)
           
 void rmAcquaintance(java.lang.String proActiveRuntimeName)
           
 byte[][] secretKeyExchange(long sessionID, byte[] encodedAESKey, byte[] encodedIVParameters, byte[] encodedClientMacKey, byte[] encodedLockData, byte[] parametersSignature)
           
 long startNewSession(Communication policy)
           
 void terminateSession(long sessionID)
           
 void unregister(ProActiveRuntime proActiveRuntimeDist, java.lang.String proActiveRuntimeName, java.lang.String creatorID, java.lang.String creationProtocol, java.lang.String vmName)
           
 void unregisterAllVirtualNodes()
           
 void unregisterVirtualNode(java.lang.String virtualNodeName)
           
 

Field Detail

runtimeLogger

public static final org.apache.log4j.Logger runtimeLogger
Method Detail

createLocalNode

public java.lang.String createLocalNode(java.lang.String nodeName,
                                        boolean replacePreviousBinding,
                                        ProActiveSecurityManager securityManager,
                                        java.lang.String VNname,
                                        java.lang.String jobId)
                                 throws java.io.IOException,
                                        NodeException
Throws:
java.io.IOException
NodeException

killAllNodes

public void killAllNodes()
                  throws java.io.IOException,
                         ProActiveException
Throws:
java.io.IOException
ProActiveException

killNode

public void killNode(java.lang.String nodeName)
              throws java.io.IOException,
                     ProActiveException
Throws:
java.io.IOException
ProActiveException

createVM

public void createVM(UniversalProcess remoteProcess)
              throws java.io.IOException,
                     ProActiveException
Throws:
java.io.IOException
ProActiveException

getLocalNodeNames

public java.lang.String[] getLocalNodeNames()
                                     throws java.io.IOException,
                                            ProActiveException
Throws:
java.io.IOException
ProActiveException

getVMInformation

public VMInformation getVMInformation()
                               throws java.io.IOException
Throws:
java.io.IOException

register

public void register(ProActiveRuntime proActiveRuntimeDist,
                     java.lang.String proActiveRuntimeName,
                     java.lang.String creatorID,
                     java.lang.String creationProtocol,
                     java.lang.String vmName)
              throws java.io.IOException,
                     ProActiveException
Throws:
java.io.IOException
ProActiveException

unregister

public void unregister(ProActiveRuntime proActiveRuntimeDist,
                       java.lang.String proActiveRuntimeName,
                       java.lang.String creatorID,
                       java.lang.String creationProtocol,
                       java.lang.String vmName)
                throws java.io.IOException,
                       ProActiveException
Throws:
java.io.IOException
ProActiveException

getProActiveRuntimes

public ProActiveRuntime[] getProActiveRuntimes()
                                        throws java.io.IOException,
                                               ProActiveException
Throws:
java.io.IOException
ProActiveException

getProActiveRuntime

public ProActiveRuntime getProActiveRuntime(java.lang.String proActiveRuntimeName)
                                     throws java.io.IOException,
                                            ProActiveException
Throws:
java.io.IOException
ProActiveException

addAcquaintance

public void addAcquaintance(java.lang.String proActiveRuntimeName)
                     throws java.io.IOException,
                            ProActiveException
Throws:
java.io.IOException
ProActiveException

getAcquaintances

public java.lang.String[] getAcquaintances()
                                    throws java.io.IOException,
                                           ProActiveException
Throws:
java.io.IOException
ProActiveException

rmAcquaintance

public void rmAcquaintance(java.lang.String proActiveRuntimeName)
                    throws java.io.IOException,
                           ProActiveException
Throws:
java.io.IOException
ProActiveException

killRT

public void killRT(boolean softly)
            throws java.lang.Exception
Throws:
java.lang.Exception

getURL

public java.lang.String getURL()
                        throws java.io.IOException,
                               ProActiveException
Throws:
java.io.IOException
ProActiveException

getActiveObjects

public java.util.ArrayList getActiveObjects(java.lang.String nodeName)
                                     throws java.io.IOException,
                                            ProActiveException
Throws:
java.io.IOException
ProActiveException

getActiveObjects

public java.util.ArrayList getActiveObjects(java.lang.String nodeName,
                                            java.lang.String objectName)
                                     throws java.io.IOException,
                                            ProActiveException
Throws:
java.io.IOException
ProActiveException

getVirtualNode

public VirtualNode getVirtualNode(java.lang.String virtualNodeName)
                           throws java.io.IOException,
                                  ProActiveException
Throws:
java.io.IOException
ProActiveException

registerVirtualNode

public void registerVirtualNode(java.lang.String virtualNodeName,
                                boolean replacePreviousBinding)
                         throws java.io.IOException,
                                ProActiveException
Throws:
java.io.IOException
ProActiveException

unregisterVirtualNode

public void unregisterVirtualNode(java.lang.String virtualNodeName)
                           throws java.io.IOException,
                                  ProActiveException
Throws:
java.io.IOException
ProActiveException

unregisterAllVirtualNodes

public void unregisterAllVirtualNodes()
                               throws java.io.IOException,
                                      ProActiveException
Throws:
java.io.IOException
ProActiveException

getJobID

public java.lang.String getJobID(java.lang.String nodeUrl)
                          throws java.io.IOException,
                                 ProActiveException
Throws:
java.io.IOException
ProActiveException

createBody

public UniversalBody createBody(java.lang.String nodeName,
                                ConstructorCall bodyConstructorCall,
                                boolean isNodeLocal)
                         throws java.io.IOException,
                                ConstructorCallExecutionFailedException,
                                java.lang.reflect.InvocationTargetException,
                                ProActiveException
Throws:
java.io.IOException
ConstructorCallExecutionFailedException
java.lang.reflect.InvocationTargetException
ProActiveException

receiveBody

public UniversalBody receiveBody(java.lang.String nodeName,
                                 Body body)
                          throws java.io.IOException,
                                 ProActiveException
Throws:
java.io.IOException
ProActiveException

receiveCheckpoint

public UniversalBody receiveCheckpoint(java.lang.String nodeName,
                                       Checkpoint ckpt,
                                       int inc)
                                throws java.io.IOException,
                                       ProActiveException
Throws:
java.io.IOException
ProActiveException

getProcessToDeploy

public ExternalProcess getProcessToDeploy(ProActiveRuntime proActiveRuntimeDist,
                                          java.lang.String creatorID,
                                          java.lang.String vmName,
                                          java.lang.String padURL)
                                   throws ProActiveException,
                                          java.io.IOException
Throws:
ProActiveException
java.io.IOException

getClassDataFromParentRuntime

public byte[] getClassDataFromParentRuntime(java.lang.String className)
                                     throws java.io.IOException,
                                            ProActiveException
Throws:
java.io.IOException
ProActiveException
See Also:
ProActiveRuntime.getClassDataFromParentRuntime(String)

getClassDataFromThisRuntime

public byte[] getClassDataFromThisRuntime(java.lang.String className)
                                   throws java.io.IOException,
                                          ProActiveException
Throws:
java.io.IOException
ProActiveException
See Also:
ProActiveRuntime.getClassDataFromThisRuntime(String)

getVNName

public java.lang.String getVNName(java.lang.String Nodename)
                           throws java.io.IOException,
                                  ProActiveException
Throws:
java.io.IOException
ProActiveException

launchMain

public void launchMain(java.lang.String className,
                       java.lang.String[] parameters)
                throws java.io.IOException,
                       java.lang.ClassNotFoundException,
                       java.lang.NoSuchMethodException,
                       ProActiveException
Throws:
java.io.IOException
java.lang.ClassNotFoundException
java.lang.NoSuchMethodException
ProActiveException

newRemote

public void newRemote(java.lang.String className)
               throws java.io.IOException,
                      java.lang.ClassNotFoundException,
                      ProActiveException
Throws:
java.io.IOException
java.lang.ClassNotFoundException
ProActiveException

getDescriptor

public ProActiveDescriptor getDescriptor(java.lang.String url,
                                         boolean isHierarchicalSearch)
                                  throws java.io.IOException,
                                         ProActiveException
Throws:
java.io.IOException
ProActiveException

getCertificate

public java.security.cert.X509Certificate getCertificate()
                                                  throws SecurityNotAvailableException,
                                                         java.io.IOException
Throws:
SecurityNotAvailableException
java.io.IOException

startNewSession

public long startNewSession(Communication policy)
                     throws SecurityNotAvailableException,
                            RenegotiateSessionException,
                            java.io.IOException
Throws:
SecurityNotAvailableException
RenegotiateSessionException
java.io.IOException

getPublicKey

public java.security.PublicKey getPublicKey()
                                     throws SecurityNotAvailableException,
                                            java.io.IOException
Throws:
SecurityNotAvailableException
java.io.IOException

randomValue

public byte[] randomValue(long sessionID,
                          byte[] clientRandomValue)
                   throws SecurityNotAvailableException,
                          RenegotiateSessionException,
                          java.io.IOException
Throws:
SecurityNotAvailableException
RenegotiateSessionException
java.io.IOException

publicKeyExchange

public byte[][] publicKeyExchange(long sessionID,
                                  byte[] myPublicKey,
                                  byte[] myCertificate,
                                  byte[] signature)
                           throws SecurityNotAvailableException,
                                  RenegotiateSessionException,
                                  KeyExchangeException,
                                  java.io.IOException
Throws:
SecurityNotAvailableException
RenegotiateSessionException
KeyExchangeException
java.io.IOException

secretKeyExchange

public byte[][] secretKeyExchange(long sessionID,
                                  byte[] encodedAESKey,
                                  byte[] encodedIVParameters,
                                  byte[] encodedClientMacKey,
                                  byte[] encodedLockData,
                                  byte[] parametersSignature)
                           throws SecurityNotAvailableException,
                                  RenegotiateSessionException,
                                  java.io.IOException
Throws:
SecurityNotAvailableException
RenegotiateSessionException
java.io.IOException

getPolicy

public SecurityContext getPolicy(SecurityContext securityContext)
                          throws SecurityNotAvailableException,
                                 java.io.IOException
Throws:
SecurityNotAvailableException
java.io.IOException

getCertificateEncoded

public byte[] getCertificateEncoded()
                             throws SecurityNotAvailableException,
                                    java.io.IOException
Throws:
SecurityNotAvailableException
java.io.IOException

getEntities

public java.util.ArrayList getEntities()
                                throws SecurityNotAvailableException,
                                       java.io.IOException
Throws:
SecurityNotAvailableException
java.io.IOException

terminateSession

public void terminateSession(long sessionID)
                      throws java.io.IOException,
                             SecurityNotAvailableException
Throws:
java.io.IOException
SecurityNotAvailableException


Copyright 2001-2005 INRIA All Rights Reserved.