public QueueMessageDispatcher(ILogger logger, IQueueManager queueManager, IBrokeredMessageFactory brokeredMessageFactory, IEndpointNamingPolicy endpointNamingPolicy, MaxConcurrentReceiverCallsSetting maxConcurrentReceiverCallsSetting) { _logger = logger; _queueManager = queueManager; _brokeredMessageFactory = brokeredMessageFactory; _endpointNamingPolicy = endpointNamingPolicy; _maxConcurrentReceiverCallsSetting = maxConcurrentReceiverCallsSetting; }
internal MessageDispatcher(ILogger logger, MessageReceiver messageReceiver, Func<object, Task> messageProcessor, IBrokeredMessageFactory brokeredMessageFactory, Type inboundMessageType, MaxConcurrentReceiverCallsSetting maxConcurrentReceiverCallsSetting) { _logger = logger; _messageProcessor = messageProcessor; _brokeredMessageFactory = brokeredMessageFactory; _inboundMessageType = inboundMessageType; messageReceiver.OnMessageAsync(PreProcessMessage, new OnMessageOptions() { MaxConcurrentCalls = maxConcurrentReceiverCallsSetting }); }
public SubscriptionMessageDispatcher(ILogger logger, ISubscriptionManager subscriptionManager, IBrokeredMessageFactory brokeredMessageFactory, IEndpointNamingPolicy endpointNamingPolicy, MaxConcurrentReceiverCallsSetting maxConcurrentReceiverCallsSetting) { _logger = logger; _brokeredMessageFactory = brokeredMessageFactory; _endpointNamingPolicy = endpointNamingPolicy; _maxConcurrentReceiverCallsSetting = maxConcurrentReceiverCallsSetting; _subscriptionManager = subscriptionManager; }
private void AssertConfigurationIsValid() { if(MaxConcurrentReceiverCalls==null) MaxConcurrentReceiverCalls = new MaxConcurrentReceiverCallsSetting(); if (Logger == null) Logger = new NullLogger(); var validatableComponents = GetType().GetProperties() .Select(p => p.GetValue(this)) .OfType<IValidatableConfigurationSetting>() .ToArray(); var validationErrors = validatableComponents .SelectMany(c => c.Validate()) .ToArray(); if (!validationErrors.Any()) return; var message = string.Join(Environment.NewLine, new[] { "Bus configuration is invalid:" }.Concat(validationErrors)); throw new BusException(message); }