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

Contents of /android/TrainInfoService/src/dk/thoerup/traininfoservice/SettingsListener.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1345 - (show annotations) (download)
Wed Apr 20 16:47:21 2011 UTC (13 years ago) by torben
File size: 1672 byte(s)
Wehn config is ServletContext there's no need to have a reload method
1 package dk.thoerup.traininfoservice;
2
3 import java.util.logging.Logger;
4
5 import javax.servlet.ServletContext;
6 import javax.servlet.ServletContextEvent;
7 import javax.servlet.ServletContextListener;
8 import javax.servlet.ServletRegistration;
9 import javax.servlet.annotation.WebListener;
10
11 import dk.thoerup.webconfig.ConfigServlet;
12 import dk.thoerup.webconfig.ContextConfigLoader;
13
14
15
16 /**
17 * Application Lifecycle Listener implementation class JmxListener
18 *
19 */
20 @WebListener
21 public class SettingsListener implements ServletContextListener {
22
23 Logger logger = Logger.getLogger(SettingsListener.class.getName());
24
25
26 /**
27 * @see ServletContextListener#contextInitialized(ServletContextEvent)
28 */
29 public void contextInitialized(ServletContextEvent sce) {
30 logger.warning("Context Init - Loading settings");
31
32 ServletContext cxt = sce.getServletContext();
33 TraininfoSettings settings = loadSettings(cxt);
34
35
36 ConfigServlet servlet = new ConfigServlet();
37 servlet.setConfigObject( settings );
38 ServletRegistration.Dynamic dynconf = cxt.addServlet("webconfig", servlet );
39 dynconf.addMapping("/ConfigServlet");
40
41 }
42
43 public static TraininfoSettings loadSettings(ServletContext cxt) {
44 TraininfoSettings settings = (TraininfoSettings) cxt.getAttribute("settings");
45 if (settings != null)
46 return settings;
47
48 settings = new TraininfoSettings();
49 new ContextConfigLoader(cxt).loadConfig(settings);
50
51 cxt.setAttribute("settings", settings);
52
53 return settings;
54 }
55
56 /**
57 * @see ServletContextListener#contextDestroyed(ServletContextEvent)
58 */
59 public void contextDestroyed(ServletContextEvent sce) {
60 }
61
62 }

  ViewVC Help
Powered by ViewVC 1.1.20