/// <summary> /// Convert a <see cref="CommittedEventStream"/> to <see cref="Dolittle.Runtime.Events.Store.CommittedEventStream"/> /// </summary> /// <param name="protobuf"><see cref="CommittedEventStream"/> to convert from</param> /// <returns>Converted <see cref="Dolittle.Runtime.Events.Store.CommittedEventStream"/></returns> public static Dolittle.Runtime.Events.Store.CommittedEventStream ToCommittedEventStream(this CommittedEventStream protobuf) { var eventSourceId = protobuf.Source.EventSource.ToConcept <EventSourceId>(); var artifactId = protobuf.Source.Artifact.ToConcept <ArtifactId>(); var versionedEventSource = new Dolittle.Runtime.Events.VersionedEventSource(eventSourceId, artifactId); var commitId = protobuf.Id.ToConcept <CommitId>(); var correlationId = protobuf.CorrelationId.ToConcept <CorrelationId>(); var timeStamp = protobuf.TimeStamp.ToDateTimeOffset(); var events = protobuf.Events.Select(_ => new Dolittle.Runtime.Events.EventEnvelope( _.Metadata.ToEventMetadata(), _.Event.ToPropertyBag() ) ).ToArray(); return(new Dolittle.Runtime.Events.Store.CommittedEventStream( protobuf.Sequence, versionedEventSource, commitId, correlationId, timeStamp, new Dolittle.Runtime.Events.Store.EventStream(events) )); }
/// <summary> /// Convert from <see cref="Dolittle.Runtime.Events.VersionedEventSource"/> to <see cref="VersionedEventSource"/> /// </summary> /// <param name="versionedEventSource"><see cref="Dolittle.Runtime.Events.VersionedEventSource"/> to convert from</param> /// <returns>Converted <see cref="VersionedEventSource"/></returns> public static VersionedEventSource ToProtobuf(this Dolittle.Runtime.Events.VersionedEventSource versionedEventSource) { var source = new VersionedEventSource { Version = versionedEventSource.Version.ToProtobuf(), EventSource = versionedEventSource.EventSource.ToProtobuf(), Artifact = versionedEventSource.Artifact.ToProtobuf() }; return(source); }