1 package com.atlassian.plugin.refimpl;
2
3 import javax.servlet.ServletContextListener;
4 import javax.servlet.ServletContextEvent;
5 import java.util.Properties;
6 import java.io.IOException;
7
8 import org.apache.log4j.PropertyConfigurator;
9 import org.apache.log4j.Logger;
10
11
12
13
14 public class InitListener implements ServletContextListener {
15
16 public InitListener() {
17 }
18
19 public void contextInitialized(ServletContextEvent sce) {
20 initializeLogger();
21
22 Logger.getLogger(InitListener.class).info("Logging initialized.");
23 ContainerManager.setInstance(new ContainerManager(sce.getServletContext()));
24 ContainerManager mgr = ContainerManager.getInstance();
25 mgr.getPluginAccessor().getPlugins();
26 }
27
28 public void contextDestroyed(ServletContextEvent sce) {
29 ContainerManager mgr = ContainerManager.getInstance();
30 if (mgr != null)
31 mgr.shutdown();
32 ContainerManager.setInstance(null);
33 }
34
35 private void initializeLogger()
36 {
37 Properties logProperties = new Properties();
38
39 try
40 {
41 logProperties.load(getClass().getResourceAsStream("/log4j.properties"));
42 PropertyConfigurator.configure(logProperties);
43
44 }
45 catch(IOException e)
46 {
47 throw new RuntimeException("Unable to load logging property", e);
48 }
49 }
50
51 }