/// <summary> /// Default Constructor /// </summary> /// <param name="processor">Processor</param> /// <param name="poller">Poller</param> /// <param name="tracker">Tracker</param> /// <param name="minimumPeriodInSeconds">Minimum, time in seconds</param> /// <param name="maximumPeriodInSeconds">Maximum, time in seconds</param> public DequeueBatchDynamic(IPoller <T> poller, IProcessor <T> processor, ITimingTracker tracker, int minimumPeriodInSeconds = BaseTimes.DefaultMinimumTiming, int maximumPeriodInSeconds = BaseTimes.DefaultMaximumTiming) : base(poller, processor, DequeueBatch <T> .MinimumBatchSize, minimumPeriodInSeconds, maximumPeriodInSeconds) { if (null == tracker) { throw new ArgumentNullException("tracker"); } this.tracker = tracker; }
/// <summary> /// Mockable Constructor /// </summary> /// <param name="queue">Storage Queue</param> /// <param name="processor">Processor</param> /// <param name="batchCount">Batch Count</param> /// <param name="minimumPeriodInSeconds">Minimum Period In Seconds</param> /// <param name="maximumPeriodInSeconds">Maximum Period In Seconds</param> public StorageDequeueBatchDynamic(IStorageQueue queue, IProcessor <T> processor, ITimingTracker tracker, int minimumPeriodInSeconds = BaseTimes.DefaultMinimumTiming, int maximumPeriodInSeconds = BaseTimes.DefaultMaximumTiming) : base(new StorageQueuePoller <T>(queue), processor, tracker, minimumPeriodInSeconds, maximumPeriodInSeconds) { }