private async Task  Publish(DomainEventBase domainEvent)
 {
     try {
         var serializedDomainEvent = DomainEventJsonSerializer.Serialize(domainEvent);
         await Task.Run(() => _rabbitMqPublisher.Publish(_exchangeName, domainEvent.EventName(), serializedDomainEvent));
     } catch (RabbitMQClientException ex) {
         throw new Exception(ex.Message);
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="connectionMultiplexer"></param>
 /// <param name="executeMiddlewaresService"></param>
 /// <param name="domainEventJsonSerializer"></param>
 public RedisEventBus(
     IConnectionMultiplexer connectionMultiplexer,
     ExecuteMiddlewaresService executeMiddlewaresService,
     DomainEventJsonSerializer domainEventJsonSerializer)
 {
     _connectionMultiplexer     = connectionMultiplexer;
     _executeMiddlewaresService = executeMiddlewaresService;
     _domainEventJsonSerializer = domainEventJsonSerializer;
 }
Ejemplo n.º 3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="executeMiddlewaresService"></param>
 /// <param name="domainEventJsonSerializer"></param>
 /// <param name="config"></param>
 /// <param name="rabbitMqParams"></param>
 public RabbitMqEventBus(
     // MsSqlEventBus failOverPublisher,
     ExecuteMiddlewaresService executeMiddlewaresService,
     DomainEventJsonSerializer domainEventJsonSerializer,
     RabbitMqConnectionFactory config,
     IOptions <RabbitMqConfigParams> rabbitMqParams)
 {
     // _failOverPublisher = failOverPublisher;
     _executeMiddlewaresService = executeMiddlewaresService;
     _domainEventJsonSerializer = domainEventJsonSerializer;
     _config         = config;
     _rabbitMqParams = rabbitMqParams;
 }
 private async Task Publish(DomainEvent domainEvent)
 {
     try
     {
         var serializedDomainEvent = DomainEventJsonSerializer.Serialize(domainEvent);
         _rabbitMqPublisher.Publish(_exchangeName, domainEvent.EventName(), serializedDomainEvent);
     }
     catch (RabbitMQClientException e)
     {
         await _failOverPublisher.Publish(new List <DomainEvent> {
             domainEvent
         });
     }
 }