Skip to content

Commit eb3de34

Browse files
chrischuAGiorgetti
authored andcommitted
Add serialization to ISerializeEvents
1 parent 4db1de2 commit eb3de34

3 files changed

Lines changed: 14 additions & 2 deletions

File tree

src/NEventStore.Persistence.Sql/DefaultEventSerializer.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,11 @@ public DefaultEventSerializer(ISerialize serializer)
1616
_serializer = serializer;
1717
}
1818

19+
public byte[] SerializeEventMessages(IReadOnlyList<EventMessage> eventMessages)
20+
{
21+
return _serializer.Serialize(eventMessages);
22+
}
23+
1924
public ICollection<EventMessage> DeserializeEventMessages(byte[] input, string bucketId, string streamId,
2025
int streamRevision, Guid commitId,
2126
int commitSequence, DateTime commitStamp, long checkpoint, IReadOnlyDictionary<string, object> headers)

src/NEventStore.Persistence.Sql/ISerializeEvents.cs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,14 @@ namespace NEventStore.Persistence.Sql
66
public interface ISerializeEvents
77
{
88
/// <summary>
9-
/// Deserializes the stream provided and reconstructs the corresponding object graph.
9+
/// Serializes the event messages.
10+
/// </summary>
11+
/// <param name="eventMessages">The messages to serialize.</param>
12+
/// <returns>A byte array representing the serialized messages.</returns>
13+
byte[] SerializeEventMessages(IReadOnlyList<EventMessage> eventMessages);
14+
15+
/// <summary>
16+
/// Deserializes the bytes provided and reconstructs the corresponding object graph.
1017
/// </summary>
1118
/// <param name="input">The bytes from which the object will be reconstructed.</param>
1219
/// <param name="bucketId">The <see cref="ICommit.BucketId" />.</param>

src/NEventStore.Persistence.Sql/SqlPersistenceEngine.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ private ICommit PersistCommit(CommitAttempt attempt)
324324
cmd.AddParameter(_dialect.CommitSequence, attempt.CommitSequence);
325325
cmd.AddParameter(_dialect.CommitStamp, attempt.CommitStamp, _dialect.GetDateTimeDbType());
326326
cmd.AddParameter(_dialect.Headers, _serializer.Serialize(attempt.Headers));
327-
_dialect.AddPayloadParamater(_connectionFactory, connection, cmd, _serializer.Serialize(attempt.Events.ToList()));
327+
_dialect.AddPayloadParamater(_connectionFactory, connection, cmd, _eventSerializer.SerializeEventMessages(attempt.Events.ToList()));
328328
OnPersistCommit(cmd, attempt);
329329
var checkpointNumber = cmd.ExecuteScalar(_dialect.PersistCommit).ToLong();
330330
return new Commit(

0 commit comments

Comments
 (0)