/[projects]/android/TrainInfoService/src/dk/thoerup/traininfoservice/CircuitBreakerListener.java
ViewVC logotype

Diff of /android/TrainInfoService/src/dk/thoerup/traininfoservice/CircuitBreakerListener.java

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

revision 584 by torben, Fri Feb 5 13:57:39 2010 UTC revision 1156 by torben, Sun Oct 3 17:23:13 2010 UTC
# Line 4  import java.util.logging.Logger; Line 4  import java.util.logging.Logger;
4    
5  import javax.servlet.ServletContextEvent;  import javax.servlet.ServletContextEvent;
6  import javax.servlet.ServletContextListener;  import javax.servlet.ServletContextListener;
7    import javax.servlet.annotation.WebListener;
8    
9  import dk.thoerup.circuitbreaker.AccountingCircuitBreaker;  import dk.thoerup.circuitbreaker.AccountingCircuitBreaker;
10  import dk.thoerup.circuitbreaker.CircuitBreakerManager;  import dk.thoerup.circuitbreaker.CircuitBreakerManager;
11  import dk.thoerup.circuitbreaker.jmx.JMXWrapper;  import dk.thoerup.circuitbreaker.jmx.JMXWrapper;
12  import dk.thoerup.circuitbreaker.notification.JavaLogNotifier;  import dk.thoerup.circuitbreaker.notification.*;
13    
14    
15  /**  /**
16   * Application Lifecycle Listener implementation class JmxListener   * Application Lifecycle Listener implementation class JmxListener
17   *   *
18   */   */
19    @WebListener
20  public class CircuitBreakerListener implements ServletContextListener {  public class CircuitBreakerListener implements ServletContextListener {
21    
22          Logger logger = Logger.getLogger(CircuitBreakerListener.class.getName());          Logger logger = Logger.getLogger(CircuitBreakerListener.class.getName());
# Line 31  public class CircuitBreakerListener impl Line 34  public class CircuitBreakerListener impl
34          int timeout = Integer.parseInt( sce.getServletContext().getInitParameter("banedk_timeout") );          int timeout = Integer.parseInt( sce.getServletContext().getInitParameter("banedk_timeout") );
35          CircuitBreakerManager mgr = CircuitBreakerManager.getManager();          CircuitBreakerManager mgr = CircuitBreakerManager.getManager();
36                    
37            
38                  AccountingCircuitBreaker banedk = new AccountingCircuitBreaker("banedk", threshold, timeout);                  AccountingCircuitBreaker banedk = new AccountingCircuitBreaker("banedk", threshold, timeout);
39                  banedk.setNotifier( new JavaLogNotifier() );                  CompositeNotifier notif = new CompositeNotifier();
40                  mgr.addCircuitBreaker( banedk );                                  notif.addNotifier( new JavaLogNotifier() );
41                    notif.addNotifier( new MailNotifier(banedk,"traininfo@t-hoerup.dk", "torben@t-hoerup.dk", "192.168.10.5") );
42                    banedk.setNotifier(notif);
43                    mgr.addCircuitBreaker( banedk );
44                    
45                    AccountingCircuitBreaker metro = new AccountingCircuitBreaker("metro", threshold, timeout);
46                    notif = new CompositeNotifier();
47                    notif.addNotifier( new JavaLogNotifier() );
48                    notif.addNotifier( new MailNotifier(banedk,"traininfo@t-hoerup.dk", "torben@t-hoerup.dk", "192.168.10.5") );
49                    banedk.setNotifier(notif);
50                    mgr.addCircuitBreaker( metro );
51                                    
52                  JMXWrapper.registerAllCircuitBreakers();                  JMXWrapper.registerAllCircuitBreakers();
53      }      }
# Line 43  public class CircuitBreakerListener impl Line 57  public class CircuitBreakerListener impl
57       */       */
58      public void contextDestroyed(ServletContextEvent sce) {      public void contextDestroyed(ServletContextEvent sce) {
59          logger.warning("Context Destroyed");          logger.warning("Context Destroyed");
60            CircuitBreakerManager.getManager().shutdown();
61    
62          JMXWrapper.unregisterAllCircuitBreakers();          JMXWrapper.unregisterAllCircuitBreakers();
63      }      }
64                    

Legend:
Removed from v.584  
changed lines
  Added in v.1156

  ViewVC Help
Powered by ViewVC 1.1.20