/[projects]/CircuitBreaker/src/dk/thoerup/circuitbreaker/CircuitBreaker.java
ViewVC logotype

Diff of /CircuitBreaker/src/dk/thoerup/circuitbreaker/CircuitBreaker.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 427 by torben, Fri Oct 9 06:56:21 2009 UTC revision 450 by torben, Tue Oct 20 10:26:50 2009 UTC
# Line 43  import dk.thoerup.curcuitbreaker.notific Line 43  import dk.thoerup.curcuitbreaker.notific
43    
44  public class CircuitBreaker{  public class CircuitBreaker{
45                    
46          private CircuitBreakerState currentState;          private volatile CircuitBreakerState currentState;
47                    
48          private final OpenState open = new OpenState();          private final OpenState open = new OpenState();
49          private final HalfOpenState halfOpen = new HalfOpenState();          private final HalfOpenState halfOpen = new HalfOpenState();
# Line 63  public class CircuitBreaker{ Line 63  public class CircuitBreaker{
63          }          }
64                    
65                    
66      public Object invoke(CircuitInvocation invocation) throws Throwable      public Object invoke(CircuitInvocation invocation) throws Exception
67      {      {
68          Object result = null;          Object result = null;
69          try          try
# Line 72  public class CircuitBreaker{ Line 72  public class CircuitBreaker{
72              result = invocation.proceed();              result = invocation.proceed();
73              getState().postInvoke(this);              getState().postInvoke(this);
74          }          }
75          catch(Throwable t)          catch(Exception e)
76          {          {
77              getState().onError(this, t);              getState().onError(this, e);
78              throw t;              throw e;
79          }          }
80          return result;          return result;
81      }      }
# Line 117  public class CircuitBreaker{ Line 117  public class CircuitBreaker{
117          }          }
118      }      }
119            
120        public boolean isClosed() {
121            return (getState() == closed);
122        }
123        
124        public boolean isOpen() {
125            return (getState() == open);
126        }
127        
128      public String getName() {      public String getName() {
129          return name;          return name;
130      }      }

Legend:
Removed from v.427  
changed lines
  Added in v.450

  ViewVC Help
Powered by ViewVC 1.1.20