1 |
package dk.thoerup.circuitbreaker; |
package dk.thoerup.circuitbreaker; |
2 |
|
|
3 |
|
import java.util.Iterator; |
4 |
import java.util.Map; |
import java.util.Map; |
5 |
import java.util.Set; |
import java.util.Set; |
6 |
import java.util.concurrent.ConcurrentHashMap; |
import java.util.concurrent.ConcurrentHashMap; |
29 |
public CircuitBreaker getCircuitBreaker(String name) { |
public CircuitBreaker getCircuitBreaker(String name) { |
30 |
return breakers.get(name); |
return breakers.get(name); |
31 |
} |
} |
32 |
|
|
33 |
|
public void removeCircuitBreaker(String name) { |
34 |
|
breakers.remove(name); |
35 |
|
} |
36 |
|
|
37 |
public void addCircuitBreaker(CircuitBreaker cb) { |
public void addCircuitBreaker(CircuitBreaker cb) { |
38 |
breakers.put(cb.getName(), cb); |
breakers.put(cb.getName(), cb); |
39 |
} |
} |
40 |
|
|
41 |
|
public void shutdown() { |
42 |
|
for (Iterator<String> it = breakers.keySet().iterator(); it.hasNext(); ) { |
43 |
|
String key = it.next(); |
44 |
|
breakers.get(key).shutdown(); |
45 |
|
it.remove(); |
46 |
|
} |
47 |
|
} |
48 |
|
|
49 |
} |
} |