As far as I see from code examples events should implement the Event interface.
The Event interface has Data and Metadata members.
What in your mind would be the best practice of using the Event interface:
- Having every event in the system implement this interface (perhaps through the base class).
Does it mean that events should “know” how to serialize themselves into these two byte arrays?
- Having a “wrapping” message implementing Event and wrap/unwrap events when appending/reading from the Event Store?