/[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 1156 by torben, Sun Oct 3 17:23:13 2010 UTC revision 1308 by torben, Tue Apr 19 15:46:22 2011 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.ServletRegistration;
8  import javax.servlet.annotation.WebListener;  import javax.servlet.annotation.WebListener;
9    
10  import dk.thoerup.circuitbreaker.AccountingCircuitBreaker;  import dk.thoerup.circuitbreaker.AccountingCircuitBreaker;
11  import dk.thoerup.circuitbreaker.CircuitBreakerManager;  import dk.thoerup.circuitbreaker.CircuitBreakerManager;
12  import dk.thoerup.circuitbreaker.jmx.JMXWrapper;  import dk.thoerup.circuitbreaker.LoggingCircuitBreaker;
13  import dk.thoerup.circuitbreaker.notification.*;  import dk.thoerup.circuitbreaker.notification.CompositeNotifier;
14    import dk.thoerup.circuitbreaker.notification.JavaLogNotifier;
15    import dk.thoerup.circuitbreaker.notification.MailNotifier;
16    
17    
18  /**  /**
# Line 34  public class CircuitBreakerListener impl Line 37  public class CircuitBreakerListener impl
37          int timeout = Integer.parseInt( sce.getServletContext().getInitParameter("banedk_timeout") );          int timeout = Integer.parseInt( sce.getServletContext().getInitParameter("banedk_timeout") );
38          CircuitBreakerManager mgr = CircuitBreakerManager.getManager();          CircuitBreakerManager mgr = CircuitBreakerManager.getManager();
39                    
           
                 AccountingCircuitBreaker banedk = new AccountingCircuitBreaker("banedk", threshold, timeout);  
40                  CompositeNotifier notif = new CompositeNotifier();                  CompositeNotifier notif = new CompositeNotifier();
41                  notif.addNotifier( new JavaLogNotifier() );                  notif.addNotifier( new JavaLogNotifier() );
42                  notif.addNotifier( new MailNotifier(banedk,"traininfo@t-hoerup.dk", "torben@t-hoerup.dk", "192.168.10.5") );                  notif.addNotifier( new MailNotifier("traininfo@t-hoerup.dk", "torben@t-hoerup.dk", "192.168.10.5") );
43                    
44            
45                    LoggingCircuitBreaker banedk = new LoggingCircuitBreaker("banedk", threshold, timeout);
46                  banedk.setNotifier(notif);                  banedk.setNotifier(notif);
47                  mgr.addCircuitBreaker( banedk );                  mgr.addCircuitBreaker( banedk );
48                                    
49                    
50                  AccountingCircuitBreaker metro = new AccountingCircuitBreaker("metro", threshold, timeout);                  AccountingCircuitBreaker metro = new AccountingCircuitBreaker("metro", threshold, timeout);
51                  notif = new CompositeNotifier();                  metro.setNotifier(notif);
                 notif.addNotifier( new JavaLogNotifier() );  
                 notif.addNotifier( new MailNotifier(banedk,"traininfo@t-hoerup.dk", "torben@t-hoerup.dk", "192.168.10.5") );  
                 banedk.setNotifier(notif);  
52                  mgr.addCircuitBreaker( metro );                  mgr.addCircuitBreaker( metro );
53                                    
54                  JMXWrapper.registerAllCircuitBreakers();                  
55                    ServletRegistration.Dynamic dynconf = sce.getServletContext().addServlet("circuitbreaker", dk.thoerup.circuitbreaker.web.CircuitBreakerServletBase.class );
56                    dynconf.addMapping("/CircuitBreakerServlet");
57                    dynconf.setInitParameter("readonly", "0");
58                    
59                    //JMXWrapper.registerAllCircuitBreakers();
60      }      }
61    
62          /**          /**
# Line 59  public class CircuitBreakerListener impl Line 66  public class CircuitBreakerListener impl
66          logger.warning("Context Destroyed");          logger.warning("Context Destroyed");
67          CircuitBreakerManager.getManager().shutdown();          CircuitBreakerManager.getManager().shutdown();
68    
69          JMXWrapper.unregisterAllCircuitBreakers();          //JMXWrapper.unregisterAllCircuitBreakers();
70      }      }
71                    
72  }  }

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

  ViewVC Help
Powered by ViewVC 1.1.20