org.objectweb.proactive.core.runtime.ibis
Class IbisProActiveRuntimeImpl
java.lang.Object
ibis.rmi.server.RemoteObject
ibis.rmi.server.RemoteServer
ibis.rmi.server.UnicastRemoteObject
org.objectweb.proactive.core.runtime.ibis.IbisProActiveRuntimeImpl
- All Implemented Interfaces:
- IbisProActiveRuntime, ibis.rmi.Remote, RemoteProActiveRuntime, ibis.io.Serializable, java.io.Serializable
- public class IbisProActiveRuntimeImpl
- extends ibis.rmi.server.UnicastRemoteObject
- implements IbisProActiveRuntime
An adapter for a ProActiveRuntime to be able to receive remote calls. This helps isolate Ibis-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
Fields inherited from class ibis.rmi.server.RemoteObject |
ref |
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 |
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 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)
|
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)
|
Methods inherited from class ibis.rmi.server.UnicastRemoteObject |
clone, exportObject, generated_DefaultReadObject, generated_DefaultWriteObject, generated_WriteObject |
Methods inherited from class ibis.rmi.server.RemoteServer |
getClientHost |
Methods inherited from class ibis.rmi.server.RemoteObject |
equals, hashCode, toString |
Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, wait, wait, wait |
proActiveRuntime
protected transient ProActiveRuntime proActiveRuntime
proActiveRuntimeURL
protected java.lang.String proActiveRuntimeURL
nodesArray
protected java.util.ArrayList nodesArray
vnNodesArray
protected java.util.ArrayList vnNodesArray
IbisProActiveRuntimeImpl
public IbisProActiveRuntimeImpl()
throws ibis.rmi.RemoteException,
ibis.rmi.AlreadyBoundException
createLocalNode
public java.lang.String createLocalNode(java.lang.String nodeName,
boolean replacePreviousBinding,
ProActiveSecurityManager securityManager,
java.lang.String vnname,
java.lang.String jobId)
throws ibis.rmi.RemoteException,
NodeException
- Specified by:
createLocalNode
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
NodeException
killAllNodes
public void killAllNodes()
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
killAllNodes
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
killNode
public void killNode(java.lang.String nodeName)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
killNode
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
createVM
public void createVM(UniversalProcess remoteProcess)
throws java.io.IOException,
ProActiveException
- Specified by:
createVM
in interface RemoteProActiveRuntime
- Throws:
java.io.IOException
ProActiveException
getLocalNodeNames
public java.lang.String[] getLocalNodeNames()
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
getLocalNodeNames
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
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)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
register
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
unregister
public void unregister(ProActiveRuntime proActiveRuntimeDist,
java.lang.String proActiveRuntimeName,
java.lang.String creatorID,
java.lang.String creationProtocol,
java.lang.String vmName)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
unregister
in interface RemoteProActiveRuntime
- Throws:
ProActiveException
ibis.rmi.RemoteException
- See Also:
RemoteProActiveRuntime.unregister(org.objectweb.proactive.core.runtime.ProActiveRuntime, java.lang.String, java.lang.String, java.lang.String, java.lang.String)
getProActiveRuntimes
public ProActiveRuntime[] getProActiveRuntimes()
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
getProActiveRuntimes
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
getProActiveRuntime
public ProActiveRuntime getProActiveRuntime(java.lang.String proActiveRuntimeName)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
getProActiveRuntime
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
addAcquaintance
public void addAcquaintance(java.lang.String proActiveRuntimeName)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
addAcquaintance
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
getAcquaintances
public java.lang.String[] getAcquaintances()
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
getAcquaintances
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
rmAcquaintance
public void rmAcquaintance(java.lang.String proActiveRuntimeName)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
rmAcquaintance
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
killRT
public void killRT(boolean softly)
throws java.lang.Exception
- Specified by:
killRT
in interface RemoteProActiveRuntime
- Throws:
java.lang.Exception
getProcessToDeploy
public ExternalProcess getProcessToDeploy(ProActiveRuntime proActiveRuntimeDist,
java.lang.String creatorID,
java.lang.String vmName,
java.lang.String padURL)
throws ProActiveException
- Specified by:
getProcessToDeploy
in interface RemoteProActiveRuntime
- Throws:
ProActiveException
getURL
public java.lang.String getURL()
- Specified by:
getURL
in interface RemoteProActiveRuntime
getActiveObjects
public java.util.ArrayList getActiveObjects(java.lang.String nodeName)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
getActiveObjects
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
getActiveObjects
public java.util.ArrayList getActiveObjects(java.lang.String nodeName,
java.lang.String objectName)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
getActiveObjects
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
getVirtualNode
public VirtualNode getVirtualNode(java.lang.String virtualNodeName)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
getVirtualNode
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
registerVirtualNode
public void registerVirtualNode(java.lang.String virtualNodeName,
boolean replacePreviousBinding)
throws java.io.IOException
- Specified by:
registerVirtualNode
in interface RemoteProActiveRuntime
- Throws:
java.io.IOException
unregisterVirtualNode
public void unregisterVirtualNode(java.lang.String virtualnodeName)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
unregisterVirtualNode
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
unregisterAllVirtualNodes
public void unregisterAllVirtualNodes()
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
unregisterAllVirtualNodes
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
createBody
public UniversalBody createBody(java.lang.String nodeName,
ConstructorCall bodyConstructorCall,
boolean isNodeLocal)
throws ibis.rmi.RemoteException,
ConstructorCallExecutionFailedException,
ProActiveException,
java.lang.reflect.InvocationTargetException
- Specified by:
createBody
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ConstructorCallExecutionFailedException
ProActiveException
java.lang.reflect.InvocationTargetException
receiveBody
public UniversalBody receiveBody(java.lang.String nodeName,
Body body)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
receiveBody
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
receiveCheckpoint
public UniversalBody receiveCheckpoint(java.lang.String nodeURL,
Checkpoint ckpt,
int inc)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
receiveCheckpoint
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
getVNName
public java.lang.String getVNName(java.lang.String nodename)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
getVNName
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
ProActiveException
getCertificate
public java.security.cert.X509Certificate getCertificate()
throws SecurityNotAvailableException,
ibis.rmi.RemoteException,
java.io.IOException
- Specified by:
getCertificate
in interface RemoteProActiveRuntime
- Throws:
SecurityNotAvailableException
ibis.rmi.RemoteException
java.io.IOException
startNewSession
public long startNewSession(Communication policy)
throws SecurityNotAvailableException,
RenegotiateSessionException,
ibis.rmi.RemoteException,
java.io.IOException
- Specified by:
startNewSession
in interface RemoteProActiveRuntime
- Throws:
SecurityNotAvailableException
RenegotiateSessionException
ibis.rmi.RemoteException
java.io.IOException
getPublicKey
public java.security.PublicKey getPublicKey()
throws SecurityNotAvailableException,
ibis.rmi.RemoteException,
java.io.IOException
- Specified by:
getPublicKey
in interface RemoteProActiveRuntime
- Throws:
SecurityNotAvailableException
ibis.rmi.RemoteException
java.io.IOException
randomValue
public byte[] randomValue(long sessionID,
byte[] clientRandomValue)
throws SecurityNotAvailableException,
ibis.rmi.RemoteException,
java.io.IOException,
RenegotiateSessionException
- Specified by:
randomValue
in interface RemoteProActiveRuntime
- Throws:
SecurityNotAvailableException
ibis.rmi.RemoteException
java.io.IOException
RenegotiateSessionException
publicKeyExchange
public byte[][] publicKeyExchange(long sessionID,
byte[] myPublicKey,
byte[] myCertificate,
byte[] signature)
throws SecurityNotAvailableException,
RenegotiateSessionException,
KeyExchangeException,
ibis.rmi.RemoteException,
java.io.IOException
- Specified by:
publicKeyExchange
in interface RemoteProActiveRuntime
- Throws:
SecurityNotAvailableException
RenegotiateSessionException
KeyExchangeException
ibis.rmi.RemoteException
java.io.IOException
secretKeyExchange
public byte[][] secretKeyExchange(long sessionID,
byte[] encodedAESKey,
byte[] encodedIVParameters,
byte[] encodedClientMacKey,
byte[] encodedLockData,
byte[] parametersSignature)
throws SecurityNotAvailableException,
RenegotiateSessionException,
ibis.rmi.RemoteException,
java.io.IOException
- Specified by:
secretKeyExchange
in interface RemoteProActiveRuntime
- Throws:
SecurityNotAvailableException
RenegotiateSessionException
ibis.rmi.RemoteException
java.io.IOException
getPolicy
public SecurityContext getPolicy(SecurityContext securityContext)
throws SecurityNotAvailableException,
ibis.rmi.RemoteException,
java.io.IOException
- Specified by:
getPolicy
in interface RemoteProActiveRuntime
- Throws:
SecurityNotAvailableException
ibis.rmi.RemoteException
java.io.IOException
getCertificateEncoded
public byte[] getCertificateEncoded()
throws SecurityNotAvailableException,
ibis.rmi.RemoteException,
java.io.IOException
- Specified by:
getCertificateEncoded
in interface RemoteProActiveRuntime
- Throws:
SecurityNotAvailableException
ibis.rmi.RemoteException
java.io.IOException
getEntities
public java.util.ArrayList getEntities()
throws SecurityNotAvailableException,
ibis.rmi.RemoteException,
java.io.IOException
- Specified by:
getEntities
in interface RemoteProActiveRuntime
- Throws:
SecurityNotAvailableException
ibis.rmi.RemoteException
java.io.IOException
terminateSession
public void terminateSession(long sessionID)
throws ibis.rmi.RemoteException,
SecurityNotAvailableException,
java.io.IOException
- Specified by:
terminateSession
in interface RemoteProActiveRuntime
- Throws:
ibis.rmi.RemoteException
SecurityNotAvailableException
java.io.IOException
getJobID
public java.lang.String getJobID(java.lang.String nodeUrl)
throws ibis.rmi.RemoteException,
ProActiveException
- Specified by:
getJobID
in interface RemoteProActiveRuntime
- Throws:
ProActiveException
ibis.rmi.RemoteException
- See Also:
RemoteProActiveRuntime.getJobID(java.lang.String)
getClassDataFromParentRuntime
public byte[] getClassDataFromParentRuntime(java.lang.String className)
throws java.io.IOException,
ProActiveException
- Specified by:
getClassDataFromParentRuntime
in interface RemoteProActiveRuntime
- Throws:
java.io.IOException
ProActiveException
- See Also:
ProActiveRuntime.getClassDataFromParentRuntime(String)
getClassDataFromThisRuntime
public byte[] getClassDataFromThisRuntime(java.lang.String className)
throws java.io.IOException,
ProActiveException
- Specified by:
getClassDataFromThisRuntime
in interface RemoteProActiveRuntime
- Throws:
java.io.IOException
ProActiveException
- See Also:
ProActiveRuntime.getClassDataFromThisRuntime(String)
getJobID
public java.lang.String getJobID()
- See Also:
Job.getJobID()
launchMain
public void launchMain(java.lang.String className,
java.lang.String[] parameters)
throws java.io.IOException,
java.lang.ClassNotFoundException,
java.lang.NoSuchMethodException,
ProActiveException
- Specified by:
launchMain
in interface RemoteProActiveRuntime
- 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
- Specified by:
newRemote
in interface RemoteProActiveRuntime
- Throws:
java.io.IOException
java.lang.ClassNotFoundException
ProActiveException
getDescriptor
public ProActiveDescriptor getDescriptor(java.lang.String url,
boolean isHierarchicalSearch)
throws java.io.IOException,
ProActiveException
- Specified by:
getDescriptor
in interface RemoteProActiveRuntime
- Throws:
java.io.IOException
ProActiveException
Copyright 2001-2005 INRIA All Rights Reserved.