1 | package eu.clarin.cmdi.virtualcollectionregistry.rest; |
---|
2 | |
---|
3 | import java.util.Enumeration; |
---|
4 | import java.util.HashMap; |
---|
5 | |
---|
6 | import javax.servlet.ServletContext; |
---|
7 | import javax.servlet.ServletContextEvent; |
---|
8 | import javax.servlet.ServletContextListener; |
---|
9 | |
---|
10 | import eu.clarin.cmdi.virtualcollectionregistry.DataStore; |
---|
11 | import eu.clarin.cmdi.virtualcollectionregistry.VirtualCollectionRegistry; |
---|
12 | import eu.clarin.cmdi.virtualcollectionregistry.VirtualCollectionRegistryException; |
---|
13 | |
---|
14 | |
---|
15 | public class ContextListener implements ServletContextListener { |
---|
16 | |
---|
17 | @SuppressWarnings("unchecked") |
---|
18 | public void contextInitialized(ServletContextEvent event) { |
---|
19 | ServletContext ctx = event.getServletContext(); |
---|
20 | HashMap<String, String> config = new HashMap<String, String>(); |
---|
21 | for (Enumeration i = ctx.getInitParameterNames(); i.hasMoreElements();) { |
---|
22 | String key = (String) i.nextElement(); |
---|
23 | String value = ctx.getInitParameter(key); |
---|
24 | if ((value != null) && (value.length() > 0)) { |
---|
25 | config.put(key, value); |
---|
26 | } |
---|
27 | } |
---|
28 | try { |
---|
29 | DataStore.instance().initalize(config); |
---|
30 | VirtualCollectionRegistry.initalize(config); |
---|
31 | } catch (VirtualCollectionRegistryException e) { |
---|
32 | ctx.log("error initializing registry", e); |
---|
33 | } |
---|
34 | } |
---|
35 | |
---|
36 | public void contextDestroyed(ServletContextEvent event) { |
---|
37 | ServletContext ctx = event.getServletContext(); |
---|
38 | try { |
---|
39 | VirtualCollectionRegistry.instance().destroy(); |
---|
40 | DataStore.instance().destroy(); |
---|
41 | } catch (VirtualCollectionRegistryException e) { |
---|
42 | ctx.log("error destroying registry", e); |
---|
43 | } |
---|
44 | } |
---|
45 | } |
---|