/[projects]/dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/ContextListener.java
ViewVC logotype

Diff of /dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/ContextListener.java

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

revision 2346 by torben, Mon Feb 23 14:39:49 2015 UTC revision 2352 by torben, Mon Feb 23 15:49:00 2015 UTC
# Line 7  import javax.servlet.ServletRegistration Line 7  import javax.servlet.ServletRegistration
7  import javax.servlet.annotation.WebListener;  import javax.servlet.annotation.WebListener;
8    
9  import dk.daoas.daoadresseservice.admin.ServiceConfig;  import dk.daoas.daoadresseservice.admin.ServiceConfig;
10    import dk.thoerup.circuitbreaker.AccountingCircuitBreaker;
11    import dk.thoerup.circuitbreaker.CircuitBreakerManager;
12    import dk.thoerup.circuitbreaker.web.CircuitBreakerServletBase;
13  import dk.thoerup.webconfig.ConfigServlet;  import dk.thoerup.webconfig.ConfigServlet;
14  import dk.thoerup.webconfig.ContextConfigLoader;  import dk.thoerup.webconfig.ContextConfigLoader;
15    
# Line 34  public class ContextListener implements Line 37  public class ContextListener implements
37                    
38          ServletContext ctxt = ctxtEvt.getServletContext();          ServletContext ctxt = ctxtEvt.getServletContext();
39                    
40          initDataLoader(ctxt);          ServiceConfig conf = initConfig(ctxt);
41          initConfig(ctxt);          
42            initDataLoader(ctxt, conf);
43            
44            initCircuitBreakers(ctxt, conf);
45            
46                    
47          System.out.println("DAO Context done");          System.out.println("DAO Context done");
48      }      }
49            
50      private void initDataLoader(ServletContext ctxt) {      private void initDataLoader(ServletContext ctxt, ServiceConfig conf) {
51          DataLoader load = new DataLoader(ctxt);                  DataLoader load = new DataLoader(ctxt,conf);            
52          ctxt.setAttribute("dataloader", load);          ctxt.setAttribute("dataloader", load);
53          load.doLoad();          load.doLoad();
54      }      }
55                    
56            
57      private void initConfig(ServletContext ctxt) {      private ServiceConfig initConfig(ServletContext ctxt) {
58          ServiceConfig conf = new ServiceConfig();          ServiceConfig conf = new ServiceConfig();
59                    
60          new ContextConfigLoader(ctxt).loadConfig(conf);          new ContextConfigLoader(ctxt).loadConfig(conf);
# Line 59  public class ContextListener implements Line 66  public class ContextListener implements
66          servlet.setConfigObject( conf );          servlet.setConfigObject( conf );
67          ServletRegistration.Dynamic dynconf = ctxt.addServlet("webconfig", servlet );          ServletRegistration.Dynamic dynconf = ctxt.addServlet("webconfig", servlet );
68          dynconf.addMapping("/ConfigServlet");          dynconf.addMapping("/ConfigServlet");
69            
70            return conf;    
71            
72        }
73        
74        private void initCircuitBreakers(ServletContext ctxt, ServiceConfig conf) {
75            CircuitBreakerManager mgr = CircuitBreakerManager.getManager();
76            
77            AccountingCircuitBreaker osm = new AccountingCircuitBreaker("osm", conf);
78            mgr.addCircuitBreaker( osm );
79                    
80            AccountingCircuitBreaker google = new AccountingCircuitBreaker("google", conf);
81            mgr.addCircuitBreaker( google );
82                    
83                    
84            //
85            CircuitBreakerServletBase servlet = new CircuitBreakerServletBase();
86            ServletRegistration.Dynamic dynconf = ctxt.addServlet("circuitbreaker", servlet);
87            dynconf.addMapping("/CircuitBreakerServlet");
88            dynconf.setInitParameter("readonly", "1");
89    
90      }      }
91                
92                    
93  }  }

Legend:
Removed from v.2346  
changed lines
  Added in v.2352

  ViewVC Help
Powered by ViewVC 1.1.20