public Task <AsyncTaskResult> SendAsync(ICommand command) { try { return(_sendMessageService.SendMessageAsync(Producer, BuildCommandMessage(command, false), command.AggregateRootId, command.Id, null)); } catch (Exception ex) { return(Task.FromResult(new AsyncTaskResult(AsyncTaskStatus.Failed, ex.Message))); } }
public Task <AsyncTaskResult> SendAsync(ICommand command) { try { return(_sendMessageService.SendMessageAsync(Producer, BuildCommandMessage(command, false), _commandRouteKeyProvider.GetRoutingKey(command), command.Id, null)); } catch (Exception ex) { return(Task.FromResult(new AsyncTaskResult(AsyncTaskStatus.Failed, ex.Message))); } }
public Task PublishAsync(DomainEventStreamMessage eventStream) { Ensure.NotNull(eventStream.AggregateRootId, "aggregateRootId"); var eventMessage = CreateEventMessage(eventStream); var topic = _eventTopicProvider.GetTopic(eventStream.Events.First()); var data = _jsonSerializer.Serialize(eventMessage); var equeueMessage = new EQueueMessage(topic, (int)EQueueMessageTypeCode.DomainEventStreamMessage, Encoding.UTF8.GetBytes(data)); return(_sendMessageService.SendMessageAsync(Producer, "events", string.Join(",", eventStream.Events.Select(x => x.GetType().Name)), equeueMessage, data, eventStream.AggregateRootId, eventStream.Id, eventStream.Items)); }
private void SendMessageAsync(EQueueMessage message, string messageJson, string routingKey, int retryTimes) { _ioHelper.TryAsyncActionRecursively <AsyncTaskResult>("PublishQueueMessageAsync", () => _sendMessageService.SendMessageAsync(_producer, message, routingKey), currentRetryTimes => SendMessageAsync(message, messageJson, routingKey, currentRetryTimes), null, () => string.Format("[message:{0}]", messageJson), null, retryTimes); }
public Task PublishAsync(IApplicationMessage message) { var topic = _messageTopicProvider.GetTopic(message); var data = _jsonSerializer.Serialize(message); var equeueMessage = new EQueueMessage( topic, (int)EQueueMessageTypeCode.ApplicationMessage, Encoding.UTF8.GetBytes(data), _typeNameProvider.GetTypeName(message.GetType())); return(_sendMessageService.SendMessageAsync(Producer, "applicationMessage", message.GetType().Name, equeueMessage, data, message.Id, message.Id, message.Items)); }
public Task PublishAsync(IDomainException exception) { var topic = _exceptionTopicProvider.GetTopic(exception); var serializableInfo = new Dictionary <string, string>(); exception.SerializeTo(serializableInfo); var data = _jsonSerializer.Serialize(new DomainExceptionMessage { UniqueId = exception.Id, Timestamp = exception.Timestamp, Items = exception.Items, SerializableInfo = serializableInfo }); var equeueMessage = new EQueueMessage( topic, (int)EQueueMessageTypeCode.ExceptionMessage, Encoding.UTF8.GetBytes(data), _typeNameProvider.GetTypeName(exception.GetType())); return(_sendMessageService.SendMessageAsync(Producer, "exception", exception.GetType().Name, equeueMessage, data, exception.Id, exception.Id, exception.Items)); }
public Task <AsyncTaskResult> PublishAsync(IPublishableException exception) { var message = CreateEQueueMessage(exception); return(_sendMessageService.SendMessageAsync(_producer, message, exception.GetRoutingKey() ?? exception.Id, exception.Id, null)); }
public Task <AsyncTaskResult> PublishAsync(IApplicationMessage message) { var queueMessage = CreateEQueueMessage(message); return(_sendMessageService.SendMessageAsync(_producer, queueMessage, message.GetRoutingKey() ?? message.Id, message.Id, null)); }
public Task <AsyncTaskResult> PublishAsync(DomainEventStreamMessage eventStream) { var message = CreateEQueueMessage(eventStream); return(_sendMessageService.SendMessageAsync(_producer, message, eventStream.GetRoutingKey() ?? eventStream.AggregateRootId)); }
public Task <AsyncTaskResult> PublishAsync(IDomainException exception) { var message = CreateEQueueMessage(exception); return(_sendMessageService.SendMessageAsync(Producer, "exception", exception.GetType().Name, message, exception.Id, exception.Id, exception.Items)); }
public Task PublishAsync(IApplicationMessage message) { var queueMessage = CreateEQueueMessage(message); return(_sendMessageService.SendMessageAsync(Producer, "applicationMessage", message.GetType().Name, queueMessage, message.Id, message.Id, message.Items)); }
public Task <AsyncTaskResult> PublishAsync(DomainEventStreamMessage eventStream) { var message = CreateEQueueMessage(eventStream); return(_sendMessageService.SendMessageAsync(Producer, "events", string.Join(",", eventStream.Events.Select(x => x.GetType().Name)), message, eventStream.AggregateRootId, eventStream.Id, eventStream.Items)); }
public Task SendAsync(ICommand command) { return(_sendMessageService.SendMessageAsync(Producer, "command", command.GetType().Name, BuildCommandMessage(command, false), command.AggregateRootId, command.Id, command.Items)); }
public Task <AsyncTaskResult> PublishAsync(DomainEventStreamMessage eventStream) { var message = CreateEQueueMessage(eventStream); return(_sendMessageService.SendMessageAsync(Producer, message, eventStream.AggregateRootId, eventStream.Id, eventStream.Version.ToString())); }
public Task SendAsync(ICommand command) { var equeueMessage = BuildCommandMessage(command, out string messageBody, false); return(_sendMessageService.SendMessageAsync(Producer, "command", command.GetType().Name, equeueMessage, messageBody, command.AggregateRootId, command.Id, command.Items)); }