source: geniuswebcore/geniusweb/events/NegotiationEvent.py@ 93

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

Refactor to help reusing partiesserver.

File size: 1.2 KB
RevLine 
[90]1from abc import abstractmethod, ABC
2
3from pyson.JsonSubTypes import JsonSubTypes
4from pyson.JsonTypeInfo import Id, As
5from pyson.JsonTypeInfo import JsonTypeInfo
6
7@JsonSubTypes([ "geniusweb.events.ActionEvent.ActionEvent",
8 "geniusweb.events.SessionStarted.SessionStarted",
9 "geniusweb.events.TournamentStarted.TournamentStarted"])
10@JsonTypeInfo(use=Id.NAME, include=As.WRAPPER_OBJECT)
11class NegotiationEvent (ABC):
12 '''
13 reports some event happened in the negotiation system. Generally, parties are
14 informed about events in the system, but this depends on the protocol.
15 '''
16 @abstractmethod
17 def getTime(self)->int:
18 '''
19 @return the time at which the event happened on the server, measured in
20 milliseconds, between the start time and midnight, January 1,
21 1970 UTCas. See also {@link System#currentTimeMillis()}. <br>
22
23 If the event is about an {@link Action} done by a negotiation
24 party on another machine, this time refers to the time the action
25 was handled on the server (which may differ from the clock time
26 on the other machine). <br>
27
28 Note: we do not use RFC 3339 because we need millisecond
29 accuracy.
30 '''
Note: See TracBrowser for help on using the repository browser.