public void Should_set_and_get_commit_id() { var commitId = Guid.NewGuid(); sut.SetCommitId(commitId); Assert.Equal(commitId, sut.Headers.CommitId()); Assert.Equal(commitId, sut.Headers.GetGuid("CommitId")); }
public EventData ToEventData(Envelope <IEvent> envelope, Guid commitId, bool migrate = true) { var eventPayload = envelope.Payload; if (migrate && eventPayload is IMigratedEvent migratedEvent) { eventPayload = migratedEvent.Migrate(); } var payloadType = typeNameRegistry.GetName(eventPayload.GetType()); var payloadJson = serializer.Serialize(envelope.Payload); envelope.SetCommitId(commitId); return(new EventData(payloadType, envelope.Headers, payloadJson)); }
public EventData ToEventData(Envelope <IEvent> envelope, Guid commitId, bool migrate = true) { var eventPayload = envelope.Payload; if (migrate && eventPayload is IMigratedEvent migratedEvent) { eventPayload = migratedEvent.Migrate(); } var eventType = typeNameRegistry.GetName(eventPayload.GetType()); envelope.SetCommitId(commitId); var headers = JToken.FromObject(envelope.Headers, serializer); var content = JToken.FromObject(envelope.Payload, serializer); return(new EventData { Type = eventType, Payload = content, Metadata = headers }); }
public EventData ToEventData(Envelope <IEvent> envelope, Guid commitId, bool migrate = true) { var eventPayload = envelope.Payload; if (migrate && eventPayload is IMigratedEvent migratedEvent) { eventPayload = migratedEvent.Migrate(); } var eventType = typeNameRegistry.GetName(eventPayload.GetType()); envelope.SetCommitId(commitId); var headers = WriteJson(envelope.Headers); var content = WriteJson(envelope.Payload); return(new EventData { EventId = envelope.Headers.EventId(), Type = eventType, Payload = content, Metadata = headers }); }
public EventData ToEventData(Envelope <IEvent> envelope, Guid commitId, bool migrate = true) { var eventPayload = envelope.Payload; if (migrate && eventPayload is IMigrated <IEvent> migratedEvent) { eventPayload = migratedEvent.Migrate(); if (ReferenceEquals(migratedEvent, eventPayload)) { Debug.WriteLine("Migration should return new event."); } } var payloadType = typeNameRegistry.GetName(eventPayload.GetType()); var payloadJson = serializer.Serialize(envelope.Payload); envelope.SetCommitId(commitId); return(new EventData(payloadType, envelope.Headers, payloadJson)); }
public void Should_serialize_and_deserialize_envelope() { var commitId = Guid.NewGuid(); var inputEvent = new Envelope <MyEvent>(new MyEvent { MyProperty = "My-Property" }); inputEvent.SetAggregateId(Guid.NewGuid()); inputEvent.SetCommitId(commitId); inputEvent.SetEventId(Guid.NewGuid()); inputEvent.SetEventPosition("1"); inputEvent.SetEventStreamNumber(1); inputEvent.SetTimestamp(SystemClock.Instance.GetCurrentInstant()); var eventData = sut.ToEventData(inputEvent.To <IEvent>(), commitId); var outputEvent = sut.Parse(eventData).To <MyEvent>(); AssertHeaders(inputEvent.Headers, outputEvent.Headers); AssertPayload(inputEvent, outputEvent); }