--- android/TrainInfoService/src/dk/thoerup/traininfoservice/CircuitBreakerListener.java 2011/04/19 15:46:22 1308 +++ android/TrainInfoService/src/dk/thoerup/traininfoservice/CircuitBreakerListener.java 2011/10/04 17:35:31 1607 @@ -33,21 +33,28 @@ public void contextInitialized(ServletContextEvent sce) { logger.warning("Context Init"); - int threshold = Integer.parseInt(sce.getServletContext().getInitParameter("banedk_threshold") ); - int timeout = Integer.parseInt( sce.getServletContext().getInitParameter("banedk_timeout") ); + TraininfoSettings settings = SettingsListener.loadSettings( sce.getServletContext() ); + CircuitBreakerManager mgr = CircuitBreakerManager.getManager(); CompositeNotifier notif = new CompositeNotifier(); notif.addNotifier( new JavaLogNotifier() ); - notif.addNotifier( new MailNotifier("traininfo@t-hoerup.dk", "torben@t-hoerup.dk", "192.168.10.5") ); - + + //only send mail on prod server + if (sce.getServletContext().getRealPath("/").startsWith("/home/app/") ) { + String mailRecipient = settings.getMailRecipient(); + + if (mailRecipient != null && (!mailRecipient.isEmpty() ) ) { + notif.addNotifier( new MailNotifier("traininfo@t-hoerup.dk", mailRecipient, "192.168.10.5") ); + } + } - LoggingCircuitBreaker banedk = new LoggingCircuitBreaker("banedk", threshold, timeout); + LoggingCircuitBreaker banedk = new LoggingCircuitBreaker("banedk", settings); banedk.setNotifier(notif); mgr.addCircuitBreaker( banedk ); - AccountingCircuitBreaker metro = new AccountingCircuitBreaker("metro", threshold, timeout); + AccountingCircuitBreaker metro = new AccountingCircuitBreaker("metro", settings); metro.setNotifier(notif); mgr.addCircuitBreaker( metro );