Example #1
0
 public CircuitStateChangedEventArgs(
     CircuitStateEnum circuitStateEnum,
     int currentCircuitBreakerPolicyAttempt,
     int currentRetryPolicyAttempt
     )
 {
     CircuitStateEnum = circuitStateEnum;
     CurrentCircuitBreakerPolicyAttempt = currentCircuitBreakerPolicyAttempt;
     CurrentRetryPolicyAttempt          = currentRetryPolicyAttempt;
 }
Example #2
0
        private void ChangeCircuitState(
            CircuitStateEnum circuitState,
            int currentCircuitBreakerPolicyAtempt,
            int currentRetryPolicyAtempt)
        {
            CircuitState = circuitState;

            CircuitStateChangedEvent?.Invoke(
                this,
                new CircuitStateChangedEventArgs(
                    circuitState,
                    currentCircuitBreakerPolicyAtempt,
                    currentRetryPolicyAtempt
                    )
                );

            if (CircuitState == CircuitStateEnum.Closed)
            {
                CurrentAttempt = 0;
            }
        }