Adds injectable pazpar2 client configs
[mkjsf-moved-to-github.git] / src / main / java / com / indexdata / pz2utils4jsf / pazpar2 / Pz2Session.java
index 53e542d..b4323fc 100644 (file)
@@ -1,12 +1,14 @@
 package com.indexdata.pz2utils4jsf.pazpar2;\r
 \r
-import java.io.Serializable;\r
 import java.util.ArrayList;\r
 import java.util.List;\r
 import java.util.Map;\r
 import java.util.StringTokenizer;\r
 import java.util.concurrent.ConcurrentHashMap;\r
 \r
+import javax.enterprise.context.SessionScoped;\r
+import javax.inject.Named;\r
+\r
 import org.apache.log4j.Logger;\r
 \r
 import com.indexdata.masterkey.pazpar2.client.exceptions.ProxyErrorException;\r
@@ -22,7 +24,9 @@ import com.indexdata.pz2utils4jsf.pazpar2.data.TermListsResponse;
 import com.indexdata.pz2utils4jsf.pazpar2.data.TermResponse;\r
 import com.indexdata.pz2utils4jsf.pazpar2.state.QueryStates;\r
 \r
-public class Pz2Session implements Serializable, Pz2Interface {\r
+@Named\r
+@SessionScoped\r
+public class Pz2Session implements Pz2Interface {\r
   \r
   private static Logger logger = Logger.getLogger(Pz2Session.class);\r
   \r
@@ -34,19 +38,26 @@ public class Pz2Session implements Serializable, Pz2Interface {
   private com.indexdata.masterkey.pazpar2.client.Pazpar2Client client = null;   \r
   private TargetFilter targetFilter = null;  \r
   private ResultsPager pager = null; \r
-  \r
-  public Pz2Session (Pz2Configurator pz2conf) {\r
-    logger.debug("Instantiating pz2");  \r
-    if (pz2conf == null) {logger.error("conf is null!!!!!!!!!!!!!!!"); }\r
+      \r
+  public Pz2Session () {\r
+    logger.debug("Instantiating pz2 session object");      \r
+  }\r
+    \r
+  public void init(Pz2Configurator pz2conf) {\r
+    if (client==null) {\r
+    logger.debug("Initiating a session holding object ");\r
     try {\r
       cfg = new com.indexdata.masterkey.pazpar2.client.Pazpar2ClientConfiguration(pz2conf.getConfig());\r
       client = new com.indexdata.masterkey.pazpar2.client.Pazpar2ClientGeneric(cfg);\r
       resetDataObjects();\r
     } catch (ProxyErrorException e) {\r
       e.printStackTrace();\r
-    }    \r
+    }        \r
+    } else {\r
+      logger.error("??? attempt to initiate session but already has a client");\r
+    }\r
   }\r
-\r
+    \r
   public void doSearch(String query) {\r
     setCommandParameter("search",new CommandParameter("query","=",query));     \r
     doSearch();\r