public Task <AsyncExecutedResult> PublishAsync(IMessage message) { return(queueProducer.ProduceAsync(subscriptionManager.GetQueueTopic(message), objectSerializer.Serialize(new QueueMessage { Content = objectSerializer.Serialize(message), Tag = message.GetTag() }))); }
public Task <AsyncExecutedResult> PublishStreamAsync(EventStream stream) { var events = new Dictionary <string, string>(); foreach (var e in stream.Events) { events.Add(e.GetTag(), objectSerializer.Serialize(e)); } return(queueProducer.ProduceAsync( subscriptionManager.GetQueueTopic(stream.Events.First()), objectSerializer.Serialize(new EventStreamMessage { AggregateRootId = stream.AggregateRootId, AggregateRootTypeName = stream.AggregateRootTypeName, CommandId = stream.CommandId, Events = events, Id = stream.Id, Timestamp = stream.Timestamp, Version = stream.Version }))); }