public Settings( string sourceRoot, ILocation destinationRoot, IRateLimiterSettings rateLimiterSettings = null, ILoggerSettings loggerSettings = null, IGifSettings gifSettings = null, IJpegSettings jpegSettings = null, IPngSettings pngSettings = null) { if (string.IsNullOrEmpty(sourceRoot)) { throw new ArgumentException("SourceRoot must be set.", "sourceRoot"); } if (destinationRoot == null) { throw new ArgumentException("DestinationRoot must be set.", "destinationRoot"); } SourceRoot = sourceRoot; DestinationRoot = destinationRoot; RateLimiterSettings = rateLimiterSettings ?? new RateLimiterSettings(); LoggerSettings = loggerSettings ?? new LoggerSettings(); GifSettings = gifSettings ?? new GifSettings(); JpegSettings = jpegSettings ?? new JpegSettings(); PngSettings = pngSettings ?? new PngSettings(); }
public RateLimiter(IRateLimiterSettings settings, ILogger logger) { _settings = settings; _logger = logger; }
public RateLimiter(IRateLimiterSettings settings) : this(settings, new Logger(new LoggerSettings())) { }