Adds support for target category command - 'categories'
[mkjsf-moved-to-github.git] / src / main / java / com / indexdata / mkjsf / pazpar2 / state / StateManager.java
index f150dd8..ef6d2f7 100644 (file)
@@ -21,7 +21,8 @@ public class StateManager implements Serializable {
 \r
   Map<String, Pazpar2State> states = new HashMap<String, Pazpar2State>();\r
   String currentKey = "";\r
-  private static List<String> allCommands = new ArrayList<String>(Arrays.asList("init","ping","settings","search","stat","show","record","termlist","bytarget"));\r
+  private static List<String> allCommands = new ArrayList<String>(Arrays.asList("init","ping","settings","search","stat","show","record","termlist","bytarget",\r
+                                                                /* SP extras */ "auth","categories"));\r
   Map<String,Boolean> pendingStateChanges = new HashMap<String,Boolean>();\r
   private static Logger logger = Logger.getLogger(StateManager.class);\r
   private List<StateListener> listeners = new ArrayList<StateListener>();\r
@@ -64,15 +65,15 @@ public class StateManager implements Serializable {
    */\r
   public void checkIn(Pazpar2Command command) {\r
     if (getCurrentState().stateMutating(command)) {\r
-      logger.debug("State changed by: " + command.getName());\r
+      logger.debug("State changed by: " + command.getCommandName());\r
       Pazpar2State state = new Pazpar2State(getCurrentState(),command);\r
       states.put(state.getKey(), state);\r
       currentKey = state.getKey();\r
-      hasPendingStateChange(command.getName(),new Boolean(true));      \r
+      hasPendingStateChange(command.getCommandName(),new Boolean(true));      \r
       logger.debug("Updating " + listeners.size() + " listener(s) with state change from " + command);\r
-      updateListeners(command.getName());      \r
+      updateListeners(command.getCommandName());      \r
     } else {\r
-      logger.debug("Command " + command.getName() + " not found to change the state [" + command.getEncodedQueryString() + "]");\r
+      logger.debug("Command " + command.getCommandName() + " not found to change the state [" + command.getEncodedQueryString() + "]");\r
     }\r
   }\r
       \r
@@ -96,7 +97,7 @@ public class StateManager implements Serializable {
     } else {\r
       logger.debug("State key change. Was: [" + currentKey + "]. Will be ["+key+"]");\r
       if (states.get(key)==null) {\r
-        logger.error("The back-end received an unknow state key.");        \r
+        logger.error("The back-end received an unknow state key: ["+ key +"].");        \r
       } else {\r
         if (states.get(key).getCommand("search").equals(states.get(currentKey).getCommand("search"))) {\r
           logger.debug("No search change detected");\r