|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.objectweb.proactive.core.body.jini.JiniBodyAdapter
An adapter for a JiniBody to be able to receive remote calls. This helps isolate JINI-specific code into a small set of specific classes, thus enabling reuse if we one day decide to switch to another jini objects library.
Field Summary | |
protected UniqueID |
bodyID
Cache the ID of the Body locally for speed |
protected JiniBody |
proxiedJiniBody
The encapsulated JiniBody |
Constructor Summary | |
JiniBodyAdapter()
|
|
JiniBodyAdapter(JiniBody jiniBody)
|
|
JiniBodyAdapter(UniversalBody body)
|
Method Summary | |
void |
disableAC()
Disables automatic continuation mechanism for this body |
void |
enableAC()
Enables automatic continuation mechanism for this body |
boolean |
equals(java.lang.Object o)
|
java.security.cert.X509Certificate |
getCertificate()
|
byte[] |
getCertificateEncoded()
|
java.util.ArrayList |
getEntities()
|
UniqueID |
getID()
Returns the UniqueID of this body This identifier is unique accross all JVMs |
java.lang.String |
getNodeURL()
Returns the url of the node this body is associated to The url of the node can change if the active object migrates |
SecurityContext |
getPolicy(SecurityContext securityContext)
|
Policy |
getPolicyFrom(java.security.cert.X509Certificate certificate)
|
Communication |
getPolicyTo(java.lang.String type,
java.lang.String from,
java.lang.String to)
|
ProActiveSecurityManager |
getProActiveSecurityManager()
|
java.security.PublicKey |
getPublicKey()
|
UniversalBody |
getRemoteAdapter()
Returns the remote friendly version of this body |
java.lang.String |
getVNName()
|
int |
hashCode()
|
void |
initiateSession(int type,
UniversalBody body)
|
static UniversalBody |
lookup(java.lang.String url)
Looks-up an active object previously registered in a RMI registry. |
ConfidentialityTicket |
negociateKeyReceiverSide(ConfidentialityTicket confidentialityTicket,
long sessionID)
|
byte[][] |
publicKeyExchange(long sessionID,
UniversalBody distantBody,
byte[] my_pub,
byte[] my_cert,
byte[] sig_code)
|
byte[] |
randomValue(long sessionID,
byte[] cl_rand)
|
void |
receiveReply(Reply r)
Receives a reply in response to a former request. |
void |
receiveRequest(Request r)
Receives a request for later processing. |
static void |
register(JiniBodyAdapter bodyAdapter,
java.lang.String url)
Registers an active object into a RMI registry. |
byte[][] |
secretKeyExchange(long sessionID,
byte[] tmp,
byte[] tmp1,
byte[] tmp2,
byte[] tmp3,
byte[] tmp4)
|
void |
setImmediateService(java.lang.String methodName)
For setting an immediate service for this body. |
long |
startNewSession(Communication policy)
|
void |
terminateSession(long sessionID)
|
static void |
unregister(java.lang.String url)
Unregisters an active object previously registered into a RMI registry. |
void |
updateLocation(UniqueID id,
UniversalBody jiniBody)
Signals to this body that the body identified by id is now to a new remote location. |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected JiniBody proxiedJiniBody
protected UniqueID bodyID
Constructor Detail |
public JiniBodyAdapter()
public JiniBodyAdapter(JiniBody jiniBody) throws ProActiveException
public JiniBodyAdapter(UniversalBody body) throws ProActiveException
Method Detail |
public static void register(JiniBodyAdapter bodyAdapter, java.lang.String url) throws java.io.IOException
url
- the url under which the jini body is registered.
java.io.IOException
- if the jini body cannot be registeredpublic static void unregister(java.lang.String url) throws java.io.IOException
url
- the url under which the active object is registered.
java.io.IOException
- if the jini object cannot be removed from the registrypublic static UniversalBody lookup(java.lang.String url) throws java.io.IOException
url
- the url the jini Body is registered to
java.io.IOException
- if the jini body cannot be found under the given url
or if the object found is not of type JiniBodypublic boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public void receiveRequest(Request r) throws java.io.IOException, RenegotiateSessionException
UniversalBody
receiveRequest
in interface UniversalBody
r
- the request to process
java.io.IOException
- if the request cannot be accepted
RenegotiateSessionException
public void receiveReply(Reply r) throws java.io.IOException
UniversalBody
receiveReply
in interface UniversalBody
java.io.IOException
- if the reply cannot be acceptedpublic java.lang.String getNodeURL()
UniversalBody
getNodeURL
in interface UniversalBody
public UniqueID getID()
UniversalBody
getID
in interface UniversalBody
public void updateLocation(UniqueID id, UniversalBody jiniBody) throws java.io.IOException
UniversalBody
updateLocation
in interface UniversalBody
id
- the id of the bodyjiniBody
- the stub to the new location
java.io.IOException
public UniversalBody getRemoteAdapter()
UniversalBody
getRemoteAdapter
in interface UniversalBody
public void enableAC() throws java.io.IOException
UniversalBody
enableAC
in interface UniversalBody
java.io.IOException
public void disableAC() throws java.io.IOException
UniversalBody
disableAC
in interface UniversalBody
java.io.IOException
public void setImmediateService(java.lang.String methodName) throws java.io.IOException
UniversalBody
setImmediateService
in interface UniversalBody
java.io.IOException
public void initiateSession(int type, UniversalBody body) throws java.rmi.RemoteException, java.io.IOException, CommunicationForbiddenException, AuthenticationException, RenegotiateSessionException, SecurityNotAvailableException
initiateSession
in interface UniversalBody
java.rmi.RemoteException
java.io.IOException
CommunicationForbiddenException
AuthenticationException
RenegotiateSessionException
SecurityNotAvailableException
public void terminateSession(long sessionID) throws java.io.IOException, SecurityNotAvailableException
terminateSession
in interface UniversalBody
java.io.IOException
SecurityNotAvailableException
public java.security.cert.X509Certificate getCertificate() throws java.io.IOException, SecurityNotAvailableException
getCertificate
in interface UniversalBody
java.io.IOException
SecurityNotAvailableException
public ProActiveSecurityManager getProActiveSecurityManager() throws java.io.IOException, SecurityNotAvailableException
getProActiveSecurityManager
in interface UniversalBody
java.io.IOException
SecurityNotAvailableException
public Policy getPolicyFrom(java.security.cert.X509Certificate certificate) throws java.io.IOException, SecurityNotAvailableException
getPolicyFrom
in interface UniversalBody
java.io.IOException
SecurityNotAvailableException
public long startNewSession(Communication policy) throws java.io.IOException, RenegotiateSessionException, SecurityNotAvailableException
startNewSession
in interface UniversalBody
java.io.IOException
RenegotiateSessionException
SecurityNotAvailableException
public ConfidentialityTicket negociateKeyReceiverSide(ConfidentialityTicket confidentialityTicket, long sessionID) throws java.io.IOException, KeyExchangeException, SecurityNotAvailableException
negociateKeyReceiverSide
in interface UniversalBody
java.io.IOException
KeyExchangeException
SecurityNotAvailableException
public java.security.PublicKey getPublicKey() throws java.io.IOException, SecurityNotAvailableException
getPublicKey
in interface UniversalBody
java.io.IOException
SecurityNotAvailableException
public byte[] randomValue(long sessionID, byte[] cl_rand) throws java.lang.Exception, SecurityNotAvailableException
randomValue
in interface UniversalBody
java.lang.Exception
SecurityNotAvailableException
public byte[][] publicKeyExchange(long sessionID, UniversalBody distantBody, byte[] my_pub, byte[] my_cert, byte[] sig_code) throws java.lang.Exception, SecurityNotAvailableException
publicKeyExchange
in interface UniversalBody
java.lang.Exception
SecurityNotAvailableException
public byte[][] secretKeyExchange(long sessionID, byte[] tmp, byte[] tmp1, byte[] tmp2, byte[] tmp3, byte[] tmp4) throws java.lang.Exception, SecurityNotAvailableException
secretKeyExchange
in interface UniversalBody
java.lang.Exception
SecurityNotAvailableException
public Communication getPolicyTo(java.lang.String type, java.lang.String from, java.lang.String to) throws java.io.IOException, SecurityNotAvailableException
getPolicyTo
in interface UniversalBody
java.io.IOException
SecurityNotAvailableException
public java.lang.String getVNName() throws java.io.IOException, SecurityNotAvailableException
getVNName
in interface UniversalBody
java.io.IOException
SecurityNotAvailableException
public byte[] getCertificateEncoded() throws java.io.IOException, SecurityNotAvailableException
getCertificateEncoded
in interface UniversalBody
java.io.IOException
SecurityNotAvailableException
public SecurityContext getPolicy(SecurityContext securityContext) throws SecurityNotAvailableException, java.io.IOException
getPolicy
in interface UniversalBody
SecurityNotAvailableException
java.io.IOException
public java.util.ArrayList getEntities() throws SecurityNotAvailableException, java.io.IOException
getEntities
in interface UniversalBody
SecurityNotAvailableException
java.io.IOException
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |