public CircuitBreakerManagementService(ICircuitBreakers circuitBreakers, ICollectGarbageBreakers garbageCollector) { if (circuitBreakers == null) { throw new ArgumentNullException("circuitBreakers"); } if (garbageCollector == null) { throw new ArgumentNullException("garbageCollector"); } _circuitBreakers = circuitBreakers; _cleanupTimer = garbageCollector; }
public TimedCleanupCircuitBreakerSet(int quietBreakerCleanupPollIntervalInMs, int millisecondsUntilBreakerDeclaredQuiet, ICircuitBreakers circuitBreakerSet) { _millisecondsUntilBreakerDeclaredQuiet = millisecondsUntilBreakerDeclaredQuiet; _circuitBreakerSet = circuitBreakerSet; InitializeCleanupTimer(quietBreakerCleanupPollIntervalInMs); }
/// <summary> /// initializes service with 1 minute polling interval and 1 minute expiry for unseen breakers. /// </summary> public CircuitBreakerManagementService() { _circuitBreakers = new CircuitBreakerSet(); _cleanupTimer = new TimedCleanupCircuitBreakerSet(OneMinuteInMilliseconds, OneMinuteInMilliseconds, _circuitBreakers); }