--- CircuitBreaker/src/dk/thoerup/curcuitbreaker/CircuitBreaker.java 2009/10/05 19:54:25 395 +++ CircuitBreaker/src/dk/thoerup/curcuitbreaker/CircuitBreaker.java 2009/10/06 05:22:40 397 @@ -80,8 +80,9 @@ public void tripBreaker() { synchronized(this) { - currentState = open; open.trip(); + currentState = open; + logger.warning("Circuitbreaker tripBreaker - " + name); } @@ -104,9 +105,39 @@ } } + private CircuitBreakerState getState() { synchronized(this) { return currentState; } } + + public String getName() { + return name; + } + + public String getStateName() { + return getState().getName(); + } + + public int getThreshold() { + return closed.getThreshold(); + } + + public int getFailureCount() { + if (getState() == closed) { + return closed.getFailureCount(); + } else { + return -1; + } + } + + public long getElapsed() { + if (getState() == open) { + return open.getElapsed(); + } else { + return -1; + } + } + }