Debug stmts and fix for double object instantiation
[mkjsf-moved-to-github.git] / src / main / java / com / indexdata / pz2utils4jsf / config / Pz2ConfigureByWebXml.java
1 package com.indexdata.pz2utils4jsf.config;\r
2 \r
3 import java.io.IOException;\r
4 import java.util.HashMap;\r
5 import java.util.Map;\r
6 \r
7 import javax.enterprise.context.SessionScoped;\r
8 import javax.enterprise.inject.Alternative;\r
9 import javax.faces.context.ExternalContext;\r
10 import javax.faces.context.FacesContext;\r
11 import javax.inject.Named;\r
12 import javax.servlet.ServletContext;\r
13 \r
14 import org.apache.log4j.Logger;\r
15 \r
16 \r
17 @Named @SessionScoped @Alternative\r
18 public class Pz2ConfigureByWebXml implements Pz2Configurator {\r
19 \r
20   private static final long serialVersionUID = 144390224959311772L;\r
21   private static Logger logger = Logger.getLogger(Pz2ConfigureByWebXml.class);\r
22   private Pz2Config pz2config = null;\r
23   \r
24   public Pz2ConfigureByWebXml () {\r
25     logger.info("Instantiating Pazpar2 service configuration by web.xml parameters");\r
26   }\r
27   \r
28   public Pz2Config getConfig() throws IOException {\r
29     if (pz2config == null) {\r
30       createConfig();\r
31     }\r
32     return pz2config;\r
33   }\r
34   \r
35   private void createConfig () throws IOException {\r
36     ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();\r
37     ServletContext servletContext = (ServletContext) externalContext.getContext();\r
38     Map<String,String> parameters = new HashMap<String,String>();\r
39     parameters.put("PAZPAR2_URL", servletContext.getInitParameter("PAZPAR2_URL"));\r
40     parameters.put("PAZPAR2_SERVICE_ID", servletContext.getInitParameter("PAZPAR2_SERVICE_ID"));\r
41     pz2config = new Pz2Config(parameters);    \r
42   }\r
43 }\r