public Task PublishAsync <TMessage>(TMessage message, string recipient) { if (message is null) { throw new ArgumentNullException(nameof(message)); } var messageType = message.GetType().Name; var payload = _jsonSerializer.Serialize(message); var outboxMessage = new OutgoingActorMessage(_systemDateTimeProvider.Now(), messageType, payload, recipient); _unitOfWorkCallback.RegisterNew(outboxMessage, this); return(Task.CompletedTask); }
public void Add(OutgoingActorMessage outgoingActorMessage) { _messages.Add(outgoingActorMessage); }