private State newState(CircuitState circuitState) {
        switch (circuitState) {
            case OPEN:
                return newOpenState();
            case HALF_OPEN:
                return newHalfOpenState();
            case CLOSED:
                return newClosedState();
            case FORCED_OPEN:
                return newForcedOpenState();
            default:
                throw new Error();
        }
    }
Creates a new {@link NonBlockingCircuitBreaker} with the specified {@link Ticker} and
{@link CircuitBreakerConfig}.
core/src/main/java/com/linecorp/armeria/client/circuitbreaker/NonBlockingCircuitBreaker.java