Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/mkjsf
[mkjsf-moved-to-github.git] / src / main / java / com / indexdata / mkjsf / pazpar2 / CommandThread.java
index 10a0adc..678e4a6 100644 (file)
@@ -3,27 +3,35 @@ package com.indexdata.mkjsf.pazpar2;
 import org.apache.log4j.Logger;\r
 \r
 import com.indexdata.mkjsf.pazpar2.commands.Pazpar2Command;\r
+import com.indexdata.mkjsf.pazpar2.data.Responses;\r
 \r
+/**\r
+ * Helper class for running multiple concurrent Pazpar2 commands. Basically \r
+ * used for updating display data (show,stat,bytarget,termlist) together.\r
+ * \r
+ * @author Niels Erik\r
+ *\r
+ */\r
 public class CommandThread extends Thread {\r
 \r
   private static Logger logger = Logger.getLogger(CommandThread.class);\r
   Pazpar2Command command;\r
   SearchClient client;\r
+  Responses pzresp;\r
   HttpResponseWrapper commandResponse = null;      \r
   \r
-  public CommandThread (Pazpar2Command command, SearchClient client) {\r
+  public CommandThread (Pazpar2Command command, SearchClient client, Responses pzresp) {\r
     this.command = command;\r
     this.client = client;\r
+    this.pzresp = pzresp;\r
   }\r
   \r
   /**\r
    * Executes the specified command using the specified Pazpar2 client\r
    */\r
   public void run() {    \r
-    long start = System.currentTimeMillis();\r
-    commandResponse = client.executeCommand(command);\r
-    long end = System.currentTimeMillis();\r
-    logger.debug("Executed " + command.getCommandName() + " in " + (end-start) + " ms." );\r
+    logger.debug(command.getCommandName() + " executing asynchronously");\r
+    command.run(client,pzresp);\r
   }\r
   \r
   /**\r