/// <summary> /// Create a new customisable queue listening configuration. /// </summary> /// <param name="serializer">Serializer to use to get data from the queue.</param> /// <param name="queueName">Name of the queue. If empty, a default value should be handled in extension.</param> /// <param name="dispatchInMemory">Flag that indicates if data should be distached in memory.</param> /// <param name="callback">Callback to invoke when receving data.</param> /// <param name="createAndUseDeadLetterQueue">Flag that indicates if create a specific dead letter queue, which means /// that all unhandled data are pushed back in.</param> public QueueConfiguration(IDispatcherSerializer serializer, string queueName = "", bool dispatchInMemory = true, Action <object>?callback = null, bool createAndUseDeadLetterQueue = false) { Serializer = serializer ?? throw new ArgumentNullException(nameof(serializer)); DispatchInMemory = dispatchInMemory; Callback = callback; CreateAndUseDeadLetterQueue = createAndUseDeadLetterQueue; QueueName = queueName; }
/// <summary> /// Creates a new RabbitMQ Event bus. /// </summary> /// <param name="serializer">Object serializer.</param> /// <param name="configuration">Configuration to use for using RabbitMQ</param> /// <param name="loggerFactory">LoggerFactory</param> public RabbitMQEventBus( IDispatcherSerializer serializer, RabbitPublisherBusConfiguration configuration, ILoggerFactory?loggerFactory = null) { _logger = (loggerFactory ?? new LoggerFactory(new[] { new DebugLoggerProvider() })).CreateLogger <RabbitMQEventBus>(); _configuration = configuration ?? RabbitPublisherBusConfiguration.Default; _serializer = serializer ?? throw new ArgumentNullException(nameof(serializer)); }
internal MSMQClientBus(string emiter, IDispatcherSerializer serializer, MSMQClientBusConfiguration configuration = null) { if (string.IsNullOrWhiteSpace(emiter)) { throw new ArgumentNullException(nameof(emiter)); } _configuration = configuration ?? MSMQClientBusConfiguration.Default; _serializer = serializer ?? throw new ArgumentNullException(nameof(serializer)); _emiter = emiter; }
public AzureServiceBusClient(string emiter, IDispatcherSerializer dispatcherSerializer, IQueueClient queueClient, AzureServiceBusClientConfiguration configuration) { if (string.IsNullOrWhiteSpace(emiter)) { throw new ArgumentNullException(nameof(emiter)); } _dispatcherSerializer = dispatcherSerializer ?? throw new ArgumentNullException(nameof(dispatcherSerializer)); _emiter = emiter; _configuration = configuration; _queueClient = queueClient; }
/// <summary> /// Creates a new RabbitMQ Event bus. /// </summary> /// <param name="serializer">Object serializer.</param> /// <param name="configuration">Configuration to use for using RabbitMQ</param> /// <param name="loggerFactory">LoggerFactory</param> public RabbitMQEventBus( IDispatcherSerializer serializer, RabbitPublisherBusConfiguration configuration, ILoggerFactory loggerFactory = null) { if (loggerFactory == null) { loggerFactory = new LoggerFactory(); loggerFactory.AddProvider(new DebugLoggerProvider()); } _logger = loggerFactory.CreateLogger <RabbitMQEventBus>(); _configuration = configuration ?? RabbitPublisherBusConfiguration.Default; _serializer = serializer ?? throw new System.ArgumentNullException(nameof(serializer)); }
public RabbitMQCommandBus( IDispatcherSerializer serializer, RabbitMQClientBusConfiguration configuration, ILoggerFactory loggerFactory = null) { if (loggerFactory == null) { loggerFactory = new LoggerFactory(); loggerFactory.AddProvider(new DebugLoggerProvider()); } _logger = loggerFactory.CreateLogger <RabbitMQCommandBus>(); _serializer = serializer; _configuration = configuration; }