--- android/TrainInfoService/src/dk/thoerup/traininfoservice/CircuitBreakerListener.java 2010/10/03 17:17:38 1155 +++ android/TrainInfoService/src/dk/thoerup/traininfoservice/CircuitBreakerListener.java 2010/10/03 17:23:13 1156 @@ -9,7 +9,8 @@ import dk.thoerup.circuitbreaker.AccountingCircuitBreaker; import dk.thoerup.circuitbreaker.CircuitBreakerManager; import dk.thoerup.circuitbreaker.jmx.JMXWrapper; -import dk.thoerup.circuitbreaker.notification.JavaLogNotifier; +import dk.thoerup.circuitbreaker.notification.*; + /** * Application Lifecycle Listener implementation class JmxListener @@ -33,12 +34,19 @@ int timeout = Integer.parseInt( sce.getServletContext().getInitParameter("banedk_timeout") ); CircuitBreakerManager mgr = CircuitBreakerManager.getManager(); + AccountingCircuitBreaker banedk = new AccountingCircuitBreaker("banedk", threshold, timeout); - banedk.setNotifier( new JavaLogNotifier() ); + CompositeNotifier notif = new CompositeNotifier(); + notif.addNotifier( new JavaLogNotifier() ); + notif.addNotifier( new MailNotifier(banedk,"traininfo@t-hoerup.dk", "torben@t-hoerup.dk", "192.168.10.5") ); + banedk.setNotifier(notif); mgr.addCircuitBreaker( banedk ); AccountingCircuitBreaker metro = new AccountingCircuitBreaker("metro", threshold, timeout); - metro.setNotifier( new JavaLogNotifier() ); + notif = new CompositeNotifier(); + notif.addNotifier( new JavaLogNotifier() ); + notif.addNotifier( new MailNotifier(banedk,"traininfo@t-hoerup.dk", "torben@t-hoerup.dk", "192.168.10.5") ); + banedk.setNotifier(notif); mgr.addCircuitBreaker( metro ); JMXWrapper.registerAllCircuitBreakers(); @@ -49,7 +57,7 @@ */ public void contextDestroyed(ServletContextEvent sce) { logger.warning("Context Destroyed"); - CircuitBreakerManager.getManager().removeCircuitBreaker("banedk"); + CircuitBreakerManager.getManager().shutdown(); JMXWrapper.unregisterAllCircuitBreakers(); }