source: boa/src/main/java/geniusweb/boa/OpponentModel.java@ 14

Last change on this file since 14 was 14, checked in by bart, 5 years ago

Release 1.4.0

File size: 875 bytes
Line 
1package geniusweb.boa;
2
3import geniusweb.actions.Action;
4import geniusweb.issuevalue.Domain;
5import geniusweb.profile.Profile;
6import geniusweb.progress.Progress;
7
8/**
9 * An opponent model for use in the BOA system. Implementations should be
10 * immutable
11 */
12public interface OpponentModel extends Profile {
13 /**
14 *
15 * @param domain
16 * @return sets or changes the domain.
17 */
18 OpponentModel with(Domain domain);
19
20 /**
21 * Update this with a new action that was done by the opponent that this
22 * model is modeling. {@link #with(Domain)} must be called before calling
23 * this.
24 *
25 * @param action the new incoming action.
26 * @param progress the current progress of the negotiation. Calls to this
27 * must be done with increasing progress.
28 * @return the updated {@link OpponentModel}
29 */
30 OpponentModel with(Action action, Progress progress);
31
32}
Note: See TracBrowser for help on using the repository browser.