Fixes missing subscription to state changes by SP bean
[mkjsf-moved-to-github.git] / src / main / java / com / indexdata / pz2utils4jsf / pazpar2 / Pz2ProxyBean.java
index b585485..3eb0bba 100644 (file)
@@ -40,6 +40,7 @@ public class Pz2ProxyBean extends Pz2Bean implements ServiceProxyInterface {
       logger.info("Using [" + Utils.objectId(searchClient) + "] configured by [" \r
                             + Utils.objectId(configurator) + "]" );    \r
       configureClient(searchClient,configurator);\r
+      stateMgr.addStateListener(this);\r
     } else {\r
       logger.debug("Pz2ProxyBean:postConstruct: searchClient already instantiated " +\r
                        "during construction of parent object Pz2Bean.");\r
@@ -49,11 +50,10 @@ public class Pz2ProxyBean extends Pz2Bean implements ServiceProxyInterface {
   @Override\r
   public String login(String navigateTo) {\r
     logger.info("doing login");\r
-    ((ServiceProxyClient)searchClient).authenticate(user);\r
-    data.reset();\r
-    req.getRecord().removeParameters();\r
-    req.getSearch().setQuery(null);\r
-    \r
+    ((ServiceProxyClient)searchClient).authenticate(user);    \r
+    pzreq.getRecordInState().removeParametersSilently();\r
+    pzreq.getSearchInState().removeParametersSilently();\r
+    pzresp.reset();\r
     return navigateTo;\r
   }\r
 \r
@@ -61,8 +61,9 @@ public class Pz2ProxyBean extends Pz2Bean implements ServiceProxyInterface {
   public void setServiceProxyUrl(String url) {\r
     logger.info("Setting Service Proxy url: " + url);\r
     serviceProxyUrl = url;\r
-    req.getSearch().setQuery(null);\r
-    data.reset();\r
+    pzreq.getRecordInState().removeParametersSilently();\r
+    pzreq.getSearchInState().removeParametersSilently();\r
+    pzresp.reset();\r
   }\r
   \r
   public String getServiceProxyUrl() {\r
@@ -89,7 +90,7 @@ public class Pz2ProxyBean extends Pz2Bean implements ServiceProxyInterface {
     String initDocPath = ((ServiceProxyClient)searchClient).getInitDocPaths()[0];\r
     logger.info("Paths: " + ((ServiceProxyClient)searchClient).getInitDocPaths());\r
     logger.info("Path: " + initDocPath);\r
-    data.reset();\r
+    pzresp.reset();\r
     byte[] response = ((ServiceProxyClient)searchClient).postInitDoc(initDocPath + getInitFileName());\r
     initDocResponse = new String(response,"UTF-8");\r
     return initDocResponse;\r
@@ -97,7 +98,7 @@ public class Pz2ProxyBean extends Pz2Bean implements ServiceProxyInterface {
   \r
   @Override\r
   public String postInit(byte[] initDoc) throws UnsupportedEncodingException, IOException {    \r
-    data.reset();\r
+    pzresp.reset();\r
     byte[] response = ((ServiceProxyClient)searchClient).postInitDoc(initDoc);\r
     initDocResponse = new String(response,"UTF-8");\r
     return initDocResponse;\r