/// <summary> /// Constructor /// </summary> public LeaseBasedQueueBalancer(string name, LeaseBasedQueueBalancerOptions options, ILeaseProvider leaseProvider, ITimerRegistry timerRegistry, IServiceProvider services, ILoggerFactory loggerFactory) : base(services, loggerFactory.CreateLogger($"{typeof(LeaseBasedQueueBalancer).FullName}.{name}")) { this.options = options; this.leaseProvider = leaseProvider; this.timerRegistry = timerRegistry; }
/// <summary> /// Constructor /// </summary> public LeaseBasedQueueBalancer(string name, LeaseBasedQueueBalancerOptions options, ILeaseProvider leaseProvider, ITimerRegistry timerRegistry, IServiceProvider services, ILoggerFactory loggerFactory) : base(services, loggerFactory.CreateLogger($"{nameof(LeaseBasedQueueBalancer)}-{name}")) { this.options = options; this.leaseProvider = leaseProvider; this.timerRegistry = timerRegistry; this.executor = new AsyncSerialExecutor(); this.myQueues = new List <AcquiredQueue>(); }
/// <summary> /// Constructor /// </summary> public LeaseBasedQueueBalancer(string name, LeaseBasedQueueBalancerOptions options, IServiceProvider serviceProvider, ISiloStatusOracle siloStatusOracle, IDeploymentConfiguration deploymentConfig, ILoggerFactory loggerFactory) { this.serviceProvider = serviceProvider; this.deploymentConfig = deploymentConfig; this.siloStatusOracle = siloStatusOracle; this.myQueues = new List <AcquiredQueue>(); this.isStarting = true; this.loggerFactory = loggerFactory; this.options = options; this.logger = loggerFactory.CreateLogger($"{typeof(LeaseBasedQueueBalancer).FullName}-{name}"); }