axis_examplecompt_changesinfo-opsversion-2.00version-3.01version-3.02
Last change
on this file since db6b092 was
8780cbec,
checked in by Jay Jacobs <Jay.Jacobs@…>, 15 years ago
|
ABAC sources from Cobham
|
-
Property mode set to
100644
|
File size:
1.2 KB
|
Rev | Line | |
---|
[8780cbec] | 1 | package com.nailabs.abac.process; |
---|
| 2 | |
---|
| 3 | import edu.stanford.peer.rbtm.credential.Entity; |
---|
| 4 | import java.rmi.Remote; |
---|
| 5 | import java.rmi.RemoteException; |
---|
| 6 | |
---|
| 7 | /** |
---|
| 8 | * The negotiator interface is responsible for sending and receiving messages. |
---|
| 9 | * In this class, the term opponent is used to describe the other negotiatior, |
---|
| 10 | * not necessarily the opponent, O, described in the processing algorithms. |
---|
| 11 | */ |
---|
| 12 | public interface Negotiator extends Remote { |
---|
| 13 | /** |
---|
| 14 | * Synchronously receive a message which can contain multiple operations |
---|
| 15 | * from an opponent and then return the updates to the originating |
---|
| 16 | * opponent. |
---|
| 17 | */ |
---|
| 18 | public abstract Message receive(Message msg) |
---|
| 19 | throws Exception, RemoteException; |
---|
| 20 | |
---|
| 21 | /** |
---|
| 22 | * Method to invoke a negotiation. |
---|
| 23 | */ |
---|
| 24 | public abstract boolean negotiate() throws RemoteException; |
---|
| 25 | |
---|
| 26 | /** |
---|
| 27 | * Accessor method for getting the identity of whose behalf the peer |
---|
| 28 | * negotiator is working. |
---|
| 29 | */ |
---|
| 30 | public abstract Entity getSelf()throws RemoteException; |
---|
| 31 | |
---|
| 32 | /** |
---|
| 33 | * Asynchronous method to transmit a message to the opponent. |
---|
| 34 | */ |
---|
| 35 | //public abstract void transmit(Message msg); |
---|
| 36 | |
---|
| 37 | /** |
---|
| 38 | * Asynchronous method to receive a method from the opponent. |
---|
| 39 | */ |
---|
| 40 | //public abstract void receive(Message msg); |
---|
| 41 | |
---|
| 42 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.