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

java.lang.Object
  |
  +--java.rmi.server.RemoteObject
        |
        +--java.rmi.server.RemoteServer
              |
              +--java.rmi.server.UnicastRemoteObject
                    |
                    +--org.objectweb.proactive.core.runtime.rmi.RemoteProActiveRuntimeImpl
All Implemented Interfaces:
java.rmi.Remote, RemoteProActiveRuntime, java.io.Serializable

public class RemoteProActiveRuntimeImpl
extends java.rmi.server.UnicastRemoteObject
implements RemoteProActiveRuntime

An adapter for a ProActiveRuntime to be able to receive remote calls. This helps isolate RMI-specific code into a small set of specific classes, thus enabling reuse if we one day decide to switch to anothe remote objects library.

See Also:
Adapter Pattern, Serialized Form

Field Summary
protected  boolean hasCreatedRegistry
           
protected  java.util.ArrayList nodesArray
           
protected  ProActiveRuntimeImpl proActiveRuntime
           
protected  java.lang.String proActiveRuntimeURL
           
protected  java.util.ArrayList vnNodesArray
           
 
Fields inherited from class java.rmi.server.RemoteObject
ref
 
Fields inherited from interface org.objectweb.proactive.core.runtime.rmi.RemoteProActiveRuntime
logger
 
Constructor Summary
RemoteProActiveRuntimeImpl()
           
 
Method Summary
 UniversalBody createBody(java.lang.String nodeName, ConstructorCall bodyConstructorCall, boolean isNodeLocal)
           
 java.lang.String createLocalNode(java.lang.String nodeName, boolean replacePreviousBinding, PolicyServer ps, java.lang.String VNname, java.lang.String jobId)
           
 void createVM(UniversalProcess remoteProcess)
           
 void enableSecurityIfNeeded()
          sets all needed modifications to enable security components MUST be called when the descriptor is ready
 java.util.ArrayList getActiveObjects(java.lang.String nodeName)
           
 java.util.ArrayList getActiveObjects(java.lang.String nodeName, java.lang.String objectName)
           
 java.security.cert.X509Certificate getCreatorCertificate()
           
 java.util.ArrayList getEntities()
           
 java.util.ArrayList getEntities(java.lang.String nodeName)
           
 java.util.ArrayList getEntities(UniversalBody uBody)
           
 java.lang.String getJobID(java.lang.String nodeUrl)
           
 java.lang.String[] getLocalNodeNames()
           
 java.security.cert.X509Certificate getNodeCertificate(java.lang.String nodeName)
           
 PolicyServer getNodePolicyServer(java.lang.String nodeName)
           
 PolicyServer getPolicyServer()
           
 ProActiveRuntime getProActiveRuntime(java.lang.String proActiveRuntimeName)
           
 ProActiveRuntime[] getProActiveRuntimes()
           
 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)
           
 UniversalBody receiveBody(java.lang.String nodeName, Body body)
           
 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 setDefaultNodeVirtualNodeNAme(java.lang.String s)
           
 void setProActiveSecurityManager(ProActiveSecurityManager ps)
           
 void unregisterAllVirtualNodes()
           
 void unregisterVirtualNode(java.lang.String virtualnodeName)
           
 void updateLocalNodeVirtualName()
           
 
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
 

Field Detail

proActiveRuntime

protected transient ProActiveRuntimeImpl proActiveRuntime

proActiveRuntimeURL

protected java.lang.String proActiveRuntimeURL

nodesArray

protected java.util.ArrayList nodesArray

vnNodesArray

protected java.util.ArrayList vnNodesArray

hasCreatedRegistry

protected boolean hasCreatedRegistry
Constructor Detail

RemoteProActiveRuntimeImpl

public RemoteProActiveRuntimeImpl()
                           throws java.rmi.RemoteException,
                                  java.rmi.AlreadyBoundException
Method Detail

createLocalNode

public java.lang.String createLocalNode(java.lang.String nodeName,
                                        boolean replacePreviousBinding,
                                        PolicyServer ps,
                                        java.lang.String VNname,
                                        java.lang.String jobId)
                                 throws java.rmi.RemoteException,
                                        NodeException
Specified by:
createLocalNode in interface RemoteProActiveRuntime
java.rmi.RemoteException
NodeException

killAllNodes

public void killAllNodes()
                  throws java.rmi.RemoteException
Specified by:
killAllNodes in interface RemoteProActiveRuntime
java.rmi.RemoteException

killNode

public void killNode(java.lang.String nodeName)
              throws java.rmi.RemoteException
Specified by:
killNode in interface RemoteProActiveRuntime
java.rmi.RemoteException

createVM

public void createVM(UniversalProcess remoteProcess)
              throws java.io.IOException
Specified by:
createVM in interface RemoteProActiveRuntime
java.io.IOException

getLocalNodeNames

public java.lang.String[] getLocalNodeNames()
Specified by:
getLocalNodeNames in interface RemoteProActiveRuntime

getVMInformation

public VMInformation getVMInformation()
Specified by:
getVMInformation in interface RemoteProActiveRuntime

register

public void register(ProActiveRuntime proActiveRuntimeDist,
                     java.lang.String proActiveRuntimeName,
                     java.lang.String creatorID,
                     java.lang.String creationProtocol,
                     java.lang.String vmName)
Specified by:
register in interface RemoteProActiveRuntime

getProActiveRuntimes

public ProActiveRuntime[] getProActiveRuntimes()
Specified by:
getProActiveRuntimes in interface RemoteProActiveRuntime

getProActiveRuntime

public ProActiveRuntime getProActiveRuntime(java.lang.String proActiveRuntimeName)
Specified by:
getProActiveRuntime in interface RemoteProActiveRuntime

killRT

public void killRT(boolean softly)
            throws java.rmi.RemoteException
Specified by:
killRT in interface RemoteProActiveRuntime
java.rmi.RemoteException

getURL

public java.lang.String getURL()
Specified by:
getURL in interface RemoteProActiveRuntime

getActiveObjects

public java.util.ArrayList getActiveObjects(java.lang.String nodeName)
Specified by:
getActiveObjects in interface RemoteProActiveRuntime

getActiveObjects

public java.util.ArrayList getActiveObjects(java.lang.String nodeName,
                                            java.lang.String objectName)
Specified by:
getActiveObjects in interface RemoteProActiveRuntime

getVirtualNode

public VirtualNode getVirtualNode(java.lang.String virtualNodeName)
Specified by:
getVirtualNode in interface RemoteProActiveRuntime

registerVirtualNode

public void registerVirtualNode(java.lang.String virtualNodeName,
                                boolean replacePreviousBinding)
                         throws java.rmi.RemoteException
Specified by:
registerVirtualNode in interface RemoteProActiveRuntime
java.rmi.RemoteException

unregisterVirtualNode

public void unregisterVirtualNode(java.lang.String virtualnodeName)
                           throws java.rmi.RemoteException
Specified by:
unregisterVirtualNode in interface RemoteProActiveRuntime
java.rmi.RemoteException

unregisterAllVirtualNodes

public void unregisterAllVirtualNodes()
                               throws java.rmi.RemoteException
Specified by:
unregisterAllVirtualNodes in interface RemoteProActiveRuntime
java.rmi.RemoteException

createBody

public UniversalBody createBody(java.lang.String nodeName,
                                ConstructorCall bodyConstructorCall,
                                boolean isNodeLocal)
                         throws ConstructorCallExecutionFailedException,
                                java.lang.reflect.InvocationTargetException
Specified by:
createBody in interface RemoteProActiveRuntime
ConstructorCallExecutionFailedException
java.lang.reflect.InvocationTargetException

receiveBody

public UniversalBody receiveBody(java.lang.String nodeName,
                                 Body body)
Specified by:
receiveBody in interface RemoteProActiveRuntime

getCreatorCertificate

public java.security.cert.X509Certificate getCreatorCertificate()
                                                         throws java.rmi.RemoteException
Specified by:
getCreatorCertificate in interface RemoteProActiveRuntime
Returns:
creator certificate
java.rmi.RemoteException

getPolicyServer

public PolicyServer getPolicyServer()
                             throws java.rmi.RemoteException
Specified by:
getPolicyServer in interface RemoteProActiveRuntime
Returns:
policy server
java.rmi.RemoteException

getVNName

public java.lang.String getVNName(java.lang.String nodename)
                           throws java.rmi.RemoteException
Specified by:
getVNName in interface RemoteProActiveRuntime
java.rmi.RemoteException

setProActiveSecurityManager

public void setProActiveSecurityManager(ProActiveSecurityManager ps)
                                 throws java.rmi.RemoteException
Specified by:
setProActiveSecurityManager in interface RemoteProActiveRuntime
java.rmi.RemoteException

setDefaultNodeVirtualNodeNAme

public void setDefaultNodeVirtualNodeNAme(java.lang.String s)
                                   throws java.rmi.RemoteException
Specified by:
setDefaultNodeVirtualNodeNAme in interface RemoteProActiveRuntime
Parameters:
s -
java.rmi.RemoteException

updateLocalNodeVirtualName

public void updateLocalNodeVirtualName()
                                throws java.rmi.RemoteException
Specified by:
updateLocalNodeVirtualName in interface RemoteProActiveRuntime
java.rmi.RemoteException

getNodePolicyServer

public PolicyServer getNodePolicyServer(java.lang.String nodeName)
                                 throws java.rmi.RemoteException
Specified by:
getNodePolicyServer in interface RemoteProActiveRuntime
java.rmi.RemoteException

enableSecurityIfNeeded

public void enableSecurityIfNeeded()
                            throws java.rmi.RemoteException
Description copied from interface: RemoteProActiveRuntime
sets all needed modifications to enable security components MUST be called when the descriptor is ready

Specified by:
enableSecurityIfNeeded in interface RemoteProActiveRuntime
java.rmi.RemoteException

getNodeCertificate

public java.security.cert.X509Certificate getNodeCertificate(java.lang.String nodeName)
                                                      throws java.rmi.RemoteException
Specified by:
getNodeCertificate in interface RemoteProActiveRuntime
java.rmi.RemoteException

getEntities

public java.util.ArrayList getEntities(java.lang.String nodeName)
                                throws java.rmi.RemoteException
Specified by:
getEntities in interface RemoteProActiveRuntime
Parameters:
nodeName -
Returns:
returns all entities associated to the node
java.rmi.RemoteException

getEntities

public java.util.ArrayList getEntities(UniversalBody uBody)
                                throws java.rmi.RemoteException
Specified by:
getEntities in interface RemoteProActiveRuntime
Returns:
returns all entities associated to the node
java.rmi.RemoteException

getEntities

public java.util.ArrayList getEntities()
                                throws java.rmi.RemoteException
Specified by:
getEntities in interface RemoteProActiveRuntime
Returns:
returns all entities associated to this runtime
java.rmi.RemoteException

getJobID

public java.lang.String getJobID(java.lang.String nodeUrl)
                          throws java.rmi.RemoteException
Specified by:
getJobID in interface RemoteProActiveRuntime
java.rmi.RemoteException
See Also:
RemoteProActiveRuntime.getJobID(java.lang.String)


Copyright © April 2004 INRIA All Rights Reserved.