public CircuitBreakerManagementService(ICircuitBreakers circuitBreakers, ICollectGarbageBreakers garbageCollector)
        {
            if (circuitBreakers == null)
            {
                throw new ArgumentNullException("circuitBreakers");
            }
            if (garbageCollector == null)
            {
                throw new ArgumentNullException("garbageCollector");
            }

            _circuitBreakers = circuitBreakers;
            _cleanupTimer    = garbageCollector;
        }
 /// <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);
 }