/[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 1340 - (show annotations) (download)
Wed Apr 20 15:25:36 2011 UTC (13 years ago) by torben
File size: 1600 byte(s)
Use new config loader system
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
13
14
15 /**
16 * Application Lifecycle Listener implementation class JmxListener
17 *
18 */
19 @WebListener
20 public class SettingsListener implements ServletContextListener {
21
22 Logger logger = Logger.getLogger(SettingsListener.class.getName());
23
24
25 /**
26 * @see ServletContextListener#contextInitialized(ServletContextEvent)
27 */
28 public void contextInitialized(ServletContextEvent sce) {
29 logger.warning("Context Init - Loading settings");
30
31 ServletContext cxt = sce.getServletContext();
32 TraininfoSettings settings = loadSettings(cxt);
33
34
35 ConfigServlet servlet = new ConfigServlet();
36 servlet.setConfigObject( settings );
37 ServletRegistration.Dynamic dynconf = cxt.addServlet("webconfig", servlet );
38 dynconf.addMapping("/ConfigServlet");
39
40 }
41
42 public static TraininfoSettings loadSettings(ServletContext cxt) {
43 TraininfoSettings settings = (TraininfoSettings) cxt.getAttribute("settings");
44 if (settings != null)
45 return settings;
46
47 settings = new TraininfoSettings(cxt);
48 settings.reloadConfig();
49
50 cxt.setAttribute("settings", settings);
51
52 return settings;
53 }
54
55 /**
56 * @see ServletContextListener#contextDestroyed(ServletContextEvent)
57 */
58 public void contextDestroyed(ServletContextEvent sce) {
59 }
60
61 }

  ViewVC Help
Powered by ViewVC 1.1.20