internal ImageAvailabilityWorkQueueProcessor(ImageAvailabilityShredSettings settings) : base(settings.BatchSize, TimeSpan.FromSeconds(settings.EmptyQueueSleepTime)) { _settings = settings; try { _imageAvailabilityStrategy = (IImageAvailabilityStrategy)(new ImageAvailabilityStrategyExtensionPoint()).CreateExtension(); } catch (NotSupportedException) { _imageAvailabilityStrategy = new DefaultImageAvailabilityStrategy(); } }