source: geniuswebcore/geniusweb/events/CurrentState.py@ 94

Last change on this file since 94 was 90, checked in by Bart Vastenhouw, 3 years ago

Refactor to help reusing partiesserver.

File size: 996 bytes
RevLine 
[90]1from geniusweb.events.ProtocolEvent import ProtocolEvent
2class CurrentState( ProtocolEvent ):
3 '''
4 Reports a NegoState as the latest state of the protocol. The negoState is
5 abstract because the state is not something that can be handled at this place
6 in the dependency hierarchy. The "real" implementations are inside the
7 protocol.
8 <p>
9 When a protocol reports this event, it indicates that this state can be
10 logged to the loggers for output to the users (publication on the webpages
11 and reporting to parent protocols eg a tournamentrunner). Usually protocols
12 are updating this only after a session completes. There may be quite some
13 overhead triggered by emission of these events, such as rewriting files and
14 notifying end users behind websockets. Protocols MUST report this at least
15 once to report the final isFinished() state.
16 <p>
17 The logged state may be used to re-start a protocol if it crashes later in an
18 unfinished state.
19 '''
20 # all should implement NegoState getState();
21
Note: See TracBrowser for help on using the repository browser.