public RequestMessageDispatcher( IBrokeredMessageFactory brokeredMessageFactory, IClock clock, IDependencyResolver dependencyResolver, IInboundInterceptorFactory inboundInterceptorFactory, IOutboundInterceptorFactory outboundInterceptorFactory, ILogger logger, INimbusMessagingFactory messagingFactory, IReadOnlyDictionary <Type, Type[]> handlerMap, DefaultMessageLockDurationSetting defaultMessageLockDuration, INimbusTaskFactory taskFactory, IPropertyInjector propertyInjector) { _brokeredMessageFactory = brokeredMessageFactory; _clock = clock; _dependencyResolver = dependencyResolver; _inboundInterceptorFactory = inboundInterceptorFactory; _outboundInterceptorFactory = outboundInterceptorFactory; _logger = logger; _messagingFactory = messagingFactory; _handlerMap = handlerMap; _defaultMessageLockDuration = defaultMessageLockDuration; _taskFactory = taskFactory; _propertyInjector = propertyInjector; }
public AzureQueueManager(Func <NamespaceManager> namespaceManager, Func <MessagingFactory> messagingFactory, MaxDeliveryAttemptSetting maxDeliveryAttempts, ILogger logger, IRouter router, DefaultMessageLockDurationSetting defaultMessageLockDuration, ITypeProvider typeProvider, DefaultMessageTimeToLiveSetting defaultMessageTimeToLive, AutoDeleteOnIdleSetting autoDeleteOnIdle, EnableDeadLetteringOnMessageExpirationSetting enableDeadLetteringOnMessageExpiration) { _namespaceManager = namespaceManager; _messagingFactory = messagingFactory; _maxDeliveryAttempts = maxDeliveryAttempts; _logger = logger; _router = router; _defaultMessageLockDuration = defaultMessageLockDuration; _typeProvider = typeProvider; _defaultMessageTimeToLive = defaultMessageTimeToLive; _autoDeleteOnIdle = autoDeleteOnIdle; _enableDeadLetteringOnMessageExpiration = enableDeadLetteringOnMessageExpiration; _knownTopics = new ThreadSafeLazy <ConcurrentBag <string> >(FetchExistingTopics); _knownSubscriptions = new ThreadSafeLazy <ConcurrentBag <string> >(FetchExistingSubscriptions); _knownQueues = new ThreadSafeLazy <ConcurrentBag <string> >(FetchExistingQueues); }
public CompetingEventMessageDispatcher(IBrokeredMessageFactory brokeredMessageFactory, IClock clock, IDependencyResolver dependencyResolver, IInboundInterceptorFactory inboundInterceptorFactory, IReadOnlyDictionary <Type, Type[]> handlerMap, DefaultMessageLockDurationSetting defaultMessageLockDuration, INimbusTaskFactory taskFactory, IPropertyInjector propertyInjector, ILogger logger) : base(brokeredMessageFactory, clock, dependencyResolver, handlerMap, inboundInterceptorFactory, logger, defaultMessageLockDuration, taskFactory) { _propertyInjector = propertyInjector; }
protected EventMessageDispatcher(IBrokeredMessageFactory brokeredMessageFactory, IClock clock, IDependencyResolver dependencyResolver, IReadOnlyDictionary <Type, Type[]> handlerMap, IInboundInterceptorFactory inboundInterceptorFactory, ILogger logger, DefaultMessageLockDurationSetting defaultMessageLockDuration, INimbusTaskFactory taskFactory) { _brokeredMessageFactory = brokeredMessageFactory; _clock = clock; _dependencyResolver = dependencyResolver; _handlerMap = handlerMap; _inboundInterceptorFactory = inboundInterceptorFactory; _logger = logger; _defaultMessageLockDuration = defaultMessageLockDuration; _taskFactory = taskFactory; }
public MessageDispatcherFactory(DefaultMessageLockDurationSetting defaultMessageLockDuration, IBrokeredMessageFactory brokeredMessageFactory, IClock clock, IDependencyResolver dependencyResolver, IInboundInterceptorFactory inboundInterceptorFactory, IZombusLogger logger, IMessagingFactory messagingFactory, IOutboundInterceptorFactory outboundInterceptorFactory, IPropertyInjector propertyInjector) { _brokeredMessageFactory = brokeredMessageFactory; _clock = clock; _dependencyResolver = dependencyResolver; _inboundInterceptorFactory = inboundInterceptorFactory; _logger = logger; _messagingFactory = messagingFactory; _outboundInterceptorFactory = outboundInterceptorFactory; _defaultMessageLockDuration = defaultMessageLockDuration; _propertyInjector = propertyInjector; }
public MessageDispatcherFactory(DefaultMessageLockDurationSetting defaultMessageLockDuration, IBrokeredMessageFactory brokeredMessageFactory, IClock clock, IDependencyResolver dependencyResolver, IInboundInterceptorFactory inboundInterceptorFactory, ILogger logger, INimbusMessagingFactory messagingFactory, INimbusTaskFactory taskFactory, IOutboundInterceptorFactory outboundInterceptorFactory, IPropertyInjector propertyInjector) { _brokeredMessageFactory = brokeredMessageFactory; _clock = clock; _dependencyResolver = dependencyResolver; _inboundInterceptorFactory = inboundInterceptorFactory; _logger = logger; _messagingFactory = messagingFactory; _outboundInterceptorFactory = outboundInterceptorFactory; _defaultMessageLockDuration = defaultMessageLockDuration; _taskFactory = taskFactory; _propertyInjector = propertyInjector; }
protected override async Task <LongRunningTaskWrapper> Given() { _slowCommand = new SlowCommand(); _handler = new SlowCommandHandler(); _brokeredMessage = new BrokeredMessage(_slowCommand); _clock = new SystemClock(); _logger = new ConsoleLogger(); _defaultMessageLockDuration = new DefaultMessageLockDurationSetting(); _taskFactory = new NimbusTaskFactory(new MaximumThreadPoolThreadsSetting(), new MinimumThreadPoolThreadsSetting(), _logger); _renewLockCalled = false; _handlerTask = _handler.Handle(_slowCommand); LongRunningTaskWrapperBase.RenewLockStrategy = async m => { _renewLockCalled = true; _lockedUntil = _clock.UtcNow.AddSeconds(1); _handler.PretendToBeWorkingSemaphore.Release(); }; LongRunningTaskWrapperBase.LockedUntilUtcStrategy = m => _lockedUntil; _lockedUntil = DateTimeOffset.UtcNow.AddSeconds(1); return(new LongRunningTaskWrapper(_handlerTask, _handler, _brokeredMessage, _clock, _logger, _defaultMessageLockDuration, _taskFactory)); }