in safeguard-impl/src/main/java/org/apache/safeguard/impl/circuitbreaker/CircuitBreakerInterceptor.java [107:120]
public State isStateTransition(final CircuitBreakerImpl breaker,
final CheckIntervalData currentData,
final CheckIntervalData nextData) {
final long now = now();
final double currentFailureRatio = getCurrentFailureRatio(nextData);
breaker.closedDuration.set(now - currentData.checkIntervalStart);
if (nextData.count >= breaker.volumeThreshold && currentFailureRatio >= breaker.failureRatio) {
if (breaker.opened != null) {
breaker.opened.inc();
}
return OPEN;
}
return this;
}