|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.objectweb.proactive.ext.security.EncryptedBody
public class EncryptedBody
Field Summary | |
---|---|
protected byte[] |
encryptedBody
|
protected boolean |
isEncrypted
|
protected long |
sessionID
|
Fields inherited from interface org.objectweb.proactive.core.body.UniversalBody |
---|
bodyLogger |
Constructor Summary | |
---|---|
EncryptedBody()
|
|
EncryptedBody(byte[] encryptedBody,
long sessionID)
|
Method Summary | |
---|---|
void |
acceptCommunication()
Signals the body to accept all incoming communications. |
void |
addMessageEventListener(MessageEventListener listener)
Adds a listener of MessageEvent to this body. |
void |
addNFEListener(NFEListener listener)
|
void |
blockCommunication()
blocks all incoming communications. |
UniversalBody |
checkNewLocation(UniqueID uniqueID)
Tries to find a local version of the body of id uniqueID. |
void |
createShortcut(Shortcut shortcut)
similar to the UniversalBody.updateLocation(org.objectweb.proactive.core.UniqueID, UniversalBody) method,
it allows direct communication to the target of a functional call, accross membranes of composite components. |
void |
disableAC()
Disables automatic continuation mechanism for this body |
void |
enableAC()
Enables automatic continuation mechanism for this body |
void |
enterInThreadStore()
Allows the calling thread to enter in the ThreadStore of this body. |
void |
exitFromThreadStore()
Allows the calling thread to exit from the ThreadStore of this body. |
int |
fireNFE(NonFunctionalException e)
|
java.security.cert.X509Certificate |
getCertificate()
entity certificate |
byte[] |
getCertificateEncoded()
Entity's X509Certificate as byte array |
java.util.ArrayList<Entity> |
getEntities()
Retrieves all the entity's ID which contain this entity plus this entity ID. |
FuturePool |
getFuturePool()
Returns the future pool of this body |
UniqueID |
getID()
Returns the UniqueID of this body This identifier is unique accross all JVMs |
java.lang.String |
getJobID()
|
java.lang.String |
getName()
Returns the name of this body that can be used for displaying information |
long |
getNextSequenceID()
Returns a unique identifier that can be used to tag a future, a request |
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)
Ask the entity to fill the securityContext parameters with its own policy according to the communication details contained in the given securityContext |
Communication |
getPolicyTo(java.lang.String type,
java.lang.String from,
java.lang.String to)
|
ProActiveSecurityManager |
getProActiveSecurityManager()
|
java.security.PublicKey |
getPublicKey()
entity public key |
java.lang.Object |
getReifiedObject()
Returns the reified object that body is for The reified object is the object that has been turned active. |
BodyAdapter |
getRemoteAdapter()
Returns the remote friendly version of this body |
BlockingRequestQueue |
getRequestQueue()
Returns the request queue associated to this body |
UniversalBody |
getShortcutTargetBody(ItfID functionalItfID)
Returns the body that is the target of this shortcut for this component interface |
java.lang.String |
getVNName()
|
boolean |
isActive()
Returns whether the body is active or not. |
boolean |
isAlive()
Returns whether the body is alive or not. |
ConfidentialityTicket |
negociateKeyReceiverSide(ConfidentialityTicket confidentialityTicket,
long sessionID)
|
byte[][] |
publicKeyExchange(long sessionID,
byte[] myPublicKey,
byte[] myCertificate,
byte[] signature)
exchange entity certificate and/or public key if certificate are not available |
byte[] |
randomValue(long sessionID,
byte[] clientRandomValue)
Exchange random value between client and server entity |
java.lang.Object |
receiveFTMessage(FTMessage ev)
For sending a non fonctional message to the FTManager linked to this object. |
int |
receiveReply(Reply r)
Receives a reply in response to a former request. |
int |
receiveRequest(Request request)
Receives a request for later processing. |
void |
removeImmediateService(java.lang.String methodName,
java.lang.Class[] parametersTypes)
Removes an immediate service for this body An immediate service is a method that will bw excecuted by the calling thread. |
void |
removeMessageEventListener(MessageEventListener listener)
Removes the MessageEventListener from this body. |
void |
removeNFEListener(NFEListener listener)
|
byte[][] |
secretKeyExchange(long sessionID,
byte[] encodedAESKey,
byte[] encodedIVParameters,
byte[] encodedClientMacKey,
byte[] encodedLockData,
byte[] parametersSignature)
this method sends encoded secret parameters to the target entity |
void |
sendRequest(MethodCall methodCall,
Future future,
UniversalBody destinationBody)
Sends the request request with the future future to the local body
body . |
void |
serve(Request request)
Serves the request request by the invoking the targeted method on the
reified object. |
void |
setImmediateService(java.lang.String methodName)
For setting an immediate service for this body. |
void |
setImmediateService(java.lang.String methodName,
java.lang.Class[] parametersTypes)
Adds an immediate service for this body An immediate service is a method that will bw excecuted by the calling thread. |
void |
setPolicyServer(PolicyServer server)
set the policy server of the active object |
long |
startNewSession(Communication policy)
start an unvalidated empty session |
void |
terminate()
Terminate the body. |
void |
terminateSession(long sessionID)
terminate a given session |
void |
updateLocation(UniqueID id,
UniversalBody body)
Signals to this body that the body identified by id is now to a new remote location. |
void |
updateNodeURL(java.lang.String newNodeURL)
Set the nodeURL of this body |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected boolean isEncrypted
protected long sessionID
protected byte[] encryptedBody
Constructor Detail |
---|
public EncryptedBody()
public EncryptedBody(byte[] encryptedBody, long sessionID)
Method Detail |
---|
public void terminate()
UniversalBody
terminate
in interface UniversalBody
public boolean isAlive()
Body
isAlive
in interface Body
public boolean isActive()
Body
isActive
in interface Body
public void blockCommunication()
Body
blockCommunication
in interface Body
public void acceptCommunication()
Body
acceptCommunication
in interface Body
public void enterInThreadStore()
Body
enterInThreadStore
in interface Body
public void exitFromThreadStore()
Body
exitFromThreadStore
in interface Body
public UniversalBody checkNewLocation(UniqueID uniqueID)
Body
checkNewLocation
in interface Body
uniqueID
- the id of the body to lookup
public void setPolicyServer(PolicyServer server)
Body
setPolicyServer
in interface Body
server
- the policy serverpublic FuturePool getFuturePool()
LocalBodyStrategy
getFuturePool
in interface LocalBodyStrategy
public BlockingRequestQueue getRequestQueue()
LocalBodyStrategy
getRequestQueue
in interface LocalBodyStrategy
public java.lang.Object getReifiedObject()
LocalBodyStrategy
getReifiedObject
in interface LocalBodyStrategy
public java.lang.String getName()
LocalBodyStrategy
getName
in interface LocalBodyStrategy
public void sendRequest(MethodCall methodCall, Future future, UniversalBody destinationBody) throws java.io.IOException, RenegotiateSessionException
LocalBodyStrategy
request
with the future future
to the local body
body
.
sendRequest
in interface LocalBodyStrategy
methodCall
- the methodCall to sendfuture
- the future associated to the requestdestinationBody
- the body the request is sent to
java.io.IOException
- if the request cannot be sent to the destination body
RenegotiateSessionException
public void serve(Request request)
LocalBodyStrategy
request
by the invoking the targeted method on the
reified object. Some specific type of request may involve special processing that
does not trigger a method on the reified object.
serve
in interface LocalBodyStrategy
request
- the request to servepublic int receiveRequest(Request request) throws java.io.IOException, RenegotiateSessionException
UniversalBody
receiveRequest
in interface UniversalBody
request
- the request to process
java.io.IOException
- if the request cannot be accepted
RenegotiateSessionException
public int receiveReply(Reply r) throws java.io.IOException
UniversalBody
receiveReply
in interface UniversalBody
r
- the reply received
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 body) throws java.io.IOException
UniversalBody
updateLocation
in interface UniversalBody
id
- the id of the bodybody
- the stub to the new location
java.io.IOException
- if a pb occurs during this method callpublic void enableAC() throws java.io.IOException
UniversalBody
enableAC
in interface UniversalBody
java.io.IOException
- if a pb occurs during this method callpublic void disableAC() throws java.io.IOException
UniversalBody
disableAC
in interface UniversalBody
java.io.IOException
- if a pb occurs during this method callpublic void setImmediateService(java.lang.String methodName) throws java.io.IOException
UniversalBody
setImmediateService
in interface UniversalBody
java.io.IOException
- if a pb occurs during this method callpublic void terminateSession(long sessionID) throws java.io.IOException, SecurityNotAvailableException
SecurityEntity
terminateSession
in interface SecurityEntity
SecurityNotAvailableException
- id security is not available
java.io.IOException
public java.security.cert.X509Certificate getCertificate() throws SecurityNotAvailableException, java.io.IOException
SecurityEntity
getCertificate
in interface SecurityEntity
SecurityNotAvailableException
- if security is not available
java.io.IOException
- if communication failspublic ProActiveSecurityManager getProActiveSecurityManager() throws SecurityNotAvailableException, java.io.IOException
SecurityNotAvailableException
java.io.IOException
public long startNewSession(Communication policy) throws SecurityNotAvailableException, java.io.IOException, RenegotiateSessionException
SecurityEntity
startNewSession
in interface SecurityEntity
policy
- policy associated to the session
SecurityNotAvailableException
- if security is not available
RenegotiateSessionException
- if the session immediatly expires
java.io.IOException
public ConfidentialityTicket negociateKeyReceiverSide(ConfidentialityTicket confidentialityTicket, long sessionID) throws SecurityNotAvailableException, KeyExchangeException, java.io.IOException
SecurityNotAvailableException
KeyExchangeException
java.io.IOException
public java.security.PublicKey getPublicKey() throws SecurityNotAvailableException, java.io.IOException
SecurityEntity
getPublicKey
in interface SecurityEntity
SecurityNotAvailableException
java.io.IOException
public byte[] randomValue(long sessionID, byte[] clientRandomValue)
SecurityEntity
randomValue
in interface SecurityEntity
sessionID
- the session IDclientRandomValue
- client random value
public byte[][] publicKeyExchange(long sessionID, byte[] myPublicKey, byte[] myCertificate, byte[] signature) throws SecurityNotAvailableException, java.io.IOException, RenegotiateSessionException
SecurityEntity
publicKeyExchange
in interface SecurityEntity
sessionID
- the session IDmyPublicKey
- encoded public keymyCertificate
- encoded certificatesignature
- encoded signature of previous paramaters
SecurityNotAvailableException
- if the security is not available
RenegotiateSessionException
- if the session has expired
java.io.IOException
public byte[][] secretKeyExchange(long sessionID, byte[] encodedAESKey, byte[] encodedIVParameters, byte[] encodedClientMacKey, byte[] encodedLockData, byte[] parametersSignature) throws SecurityNotAvailableException, RenegotiateSessionException
SecurityEntity
secretKeyExchange
in interface SecurityEntity
sessionID
- session IDencodedAESKey
- the AES key use to exchange secret messageencodedIVParameters
- Initilization parameters for the AES keyencodedClientMacKey
- MAC key for checking signature of future messagesencodedLockData
- random value to prevent message replays by an external attackerparametersSignature
- encoded signature of the previous parameters
SecurityNotAvailableException
- if this entity does not support security
RenegotiateSessionException
- if the session has expired or has been cancelled during this exchangepublic Communication getPolicyTo(java.lang.String type, java.lang.String from, java.lang.String to) throws SecurityNotAvailableException, java.io.IOException
SecurityNotAvailableException
java.io.IOException
public SecurityContext getPolicy(SecurityContext securityContext) throws SecurityNotAvailableException, java.io.IOException
SecurityEntity
getPolicy
in interface SecurityEntity
securityContext
- communication details allowing the entity to
look for a matching policy
SecurityNotAvailableException
- thrown the entity doest not support the security
java.io.IOException
public java.lang.String getVNName() throws SecurityNotAvailableException, java.io.IOException
SecurityNotAvailableException
java.io.IOException
public byte[] getCertificateEncoded() throws SecurityNotAvailableException, java.io.IOException
SecurityEntity
getCertificateEncoded
in interface SecurityEntity
SecurityNotAvailableException
java.io.IOException
public java.util.ArrayList<Entity> getEntities() throws SecurityNotAvailableException, java.io.IOException
SecurityEntity
getEntities
in interface SecurityEntity
SecurityNotAvailableException
- if the target entity does not support security
java.io.IOException
public void addMessageEventListener(MessageEventListener listener)
MessageEventProducer
addMessageEventListener
in interface MessageEventProducer
listener
- the listener to addpublic void removeMessageEventListener(MessageEventListener listener)
MessageEventProducer
removeMessageEventListener
in interface MessageEventProducer
listener
- the listener to removepublic java.lang.String getJobID()
getJobID
in interface Job
public void updateNodeURL(java.lang.String newNodeURL)
Body
updateNodeURL
in interface Body
newNodeURL
- the new URL of the nodepublic java.lang.Object receiveFTMessage(FTMessage ev) throws java.io.IOException
UniversalBody
receiveFTMessage
in interface UniversalBody
ev
- the message to send
java.io.IOException
- if a pb occurs during this method callpublic UniversalBody getShortcutTargetBody(ItfID functionalItfID)
Body
getShortcutTargetBody
in interface Body
functionalItfID
- the id of the interface on which the shortcut is available
public void createShortcut(Shortcut shortcut) throws java.io.IOException
UniversalBody
UniversalBody.updateLocation(org.objectweb.proactive.core.UniqueID, UniversalBody)
method,
it allows direct communication to the target of a functional call, accross membranes of composite components.
createShortcut
in interface UniversalBody
shortcut
- the shortcut to create
java.io.IOException
- if a pb occurs during this method callpublic void setImmediateService(java.lang.String methodName, java.lang.Class[] parametersTypes) throws java.io.IOException
UniversalBody
setImmediateService
in interface UniversalBody
methodName
- the name of the methodparametersTypes
- the types of the parameters of the method
java.io.IOException
- if a pb occurs during this method callpublic void removeImmediateService(java.lang.String methodName, java.lang.Class[] parametersTypes) throws java.io.IOException
UniversalBody
removeImmediateService
in interface UniversalBody
methodName
- the name of the methodparametersTypes
- the types of the parameters of the method
java.io.IOException
- if a pb occurs during this method callpublic BodyAdapter getRemoteAdapter()
UniversalBody
getRemoteAdapter
in interface UniversalBody
public void addNFEListener(NFEListener listener)
addNFEListener
in interface NFEProducer
public void removeNFEListener(NFEListener listener)
removeNFEListener
in interface NFEProducer
public int fireNFE(NonFunctionalException e)
fireNFE
in interface NFEProducer
public long getNextSequenceID()
LocalBodyStrategy
getNextSequenceID
in interface LocalBodyStrategy
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |