private byte[] ConvertToBytes(EventDocumentDto document, long id) { var meta = new EventMeta { Version = document.Version, Timestamp = document.Timestamp, FlowId = document.FlowId }; using var baseBytes = EventExtensions.ConvertToBytes(meta); var transUnit = new EventTransUnit(document.Name, id, baseBytes.AsSpan(), Encoding.UTF8.GetBytes(document.Data)); using var buffer = EventConverter.ConvertToBytes(transUnit); return(buffer.ToArray()); }
private EventUnit <long> ConvertToEventUnit(EventDocumentDto document, long id) { if (!this.eventTypeContainer.TryGet(document.Name, out var type)) { throw new NoNullAllowedException($"event name of {document.Name}"); } var data = this.serializer.Deserialize(document.Data, type); return(new EventUnit <long> { ActorId = id, Event = data as IEvent, Meta = new EventMeta { Version = document.Version, Timestamp = document.Timestamp, FlowId = document.FlowId } }); }