[−][src]Module actyxos_sdk::event
Definition of the event envelope structure provided by ActyxOS
When publishing events
you provide only the payload with the Semantics
&
FishName
meta-data. The Event Service will add administrative
information on where the event came from and when it was published.
Querying events delivers the full set of information within the Event
data structure.
Payload definition
You are free to define your own payload data types as you see fit, provided that they
come with serialization and deserialization instances for serde
(and Abomonation
if you want to feed the
payload into differential-dataflow
).
As JSON only supports f64
floating point numbers, you may want to look into
FixNum
or decorum
for
deserializing to a type that supports equality and total ordering.
Structs
Event | Events are delivered in this envelope together with their metadata |
FishName | The name identifies a particular instance of a Fish, i.e. one of a given kind as identified by its semantics. |
LamportTimestamp | A logical timestamp taken from a |
Offset | Each ActyxOS node marks the events it publishes with its source ID and assigns
a unique (consecutive) number to it: the |
OffsetMap | Multi-dimensional cursor for event streams: an |
Opaque | A ref-counted slice of memory holding a compact binary representation of an event payload |
Payload | Compact binary storage of events created when they are received from the Event Service |
Semantics | The semantics denotes a certain kind of fish and usually implies a certain type of payloads. |
SourceId | A source ID uniquely identifies one ActyxOS node |
StreamInfo | Hold provenance information for this event |
Tag | Arbitrary metadata-string for an Event. Website documentation pending. |
TimeStamp | Microseconds since the UNIX epoch, without leap seconds and in UTC |
Enums
ParseError |