126 | | The party module contains basic interfaces for implementing your negotiation party. |
127 | | The main class is Party, which defines the basic functionality required for every negotiation party. The heart of the party is that your Party implements Connectable<Inform,Action>. Connectable contains 2 main functions: connect and disconnect. When connect is called, your party receives a Connection over which it receives Inform objects and can send Action objects. What exactly is sent and received is determined by the protocol (see the protocol section below). For example if the SAOP protocol is used, your party will receive a YourTurn message, after which it decides on its action and sends it into the Connection. See also the example party discussed below. |
128 | | |
129 | | Please check the [source:party/src/main/java/geniusweb/party/inform source code of Inform objects] for all the details. |
130 | | |
131 | | The Settings is usually the first inform that a party receives. It contains the profile, protocol, and progress information for the upcoming session. |
| 126 | A party is a program that receives inform messages from the environment and can take actions. The action can pro-actively search for information and take actions. |
| 127 | |
| 128 | The party module contains the inform objects. There are several, and although they have quite specific meanings, their fine details can be tweaked by the protocol. |
| 129 | |
| 130 | ||inform object||meaning|| |
| 131 | ||Settings||usually sent as first inform to a party, indicating start of the session and providing the party name, protocol, profile, deadline etc|| |
| 132 | ||YourTurn||Indicating that the party receiving this inform now has the turn. || |
| 133 | ||ActionDone||Informing that some party did an action|| |
| 134 | ||Finished||Indicating that a session has been finished|| |
| 135 | |
| 136 | Please check the [source:party/src/main/java/geniusweb/party/inform source code of Inform objects] for all the details especially on the json serialization. |
| 137 | |
| 138 | The party module also contains basic interfaces for implementing your negotiation party. These interfaces are only relevant to create a party compatible with our reference implementation of the [https://tracinsy.ewi.tudelft.nl/pubtrac/GeniusWebPartiesServer partiesserver]. The main class is Party, which defines the basic functionality required for a negotiation party on our server. The heart of the party is that your Party implements Connectable<Inform,Action>. Connectable contains 2 main functions: connect and disconnect. When connect is called, your party receives a Connection over which it receives Inform objects and can send Action objects. What exactly is sent and received is determined by the protocol (see the protocol section below). For example if the SAOP protocol is used, your party will receive a YourTurn message, after which it decides on its action and sends it into the Connection. See also the example party discussed below. |