public MessageContext(Guid eventId, StreamContext streamContext, IDictionary <string, object> metadata) { EventId = eventId; StreamContext = streamContext; MetadataLookup = metadata .ToLookup(keyIs => keyIs.Key, valueIs => valueIs.Value); }
public static IEnumerable <Envelope <MessageContext, object> > Deserialize(RecordedEvent recordedEvent, ILookup <string, Type> typeLookup, JsonSerializerSettings settings = null) { var additionalMetadata = EventSerializer.DeserializeMetadata(recordedEvent, settings); var message = EventSerializer.Deserialize(recordedEvent, typeLookup, settings); var streamContext = new StreamContext(recordedEvent.EventNumber, recordedEvent.EventStreamId); var messageContext = new MessageContext(recordedEvent.EventId, streamContext, additionalMetadata); yield return(Envelope.Create(messageContext, message)); }