X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fcom%2Findexdata%2Fmkjsf%2Fpazpar2%2Fstate%2FPazpar2State.java;h=015c1be781709955f11bb45e5d1c555937ad2570;hb=b9c65ec6cefe23341e4ae9ea4e6c6f9d9d7ed495;hp=e983d5c558460f4998d6130e6b134cd7a38c31d2;hpb=ccb28ae8d5d46d29c40bd8b1637522c212b80636;p=mkjsf-moved-to-github.git diff --git a/src/main/java/com/indexdata/mkjsf/pazpar2/state/Pazpar2State.java b/src/main/java/com/indexdata/mkjsf/pazpar2/state/Pazpar2State.java index e983d5c..015c1be 100644 --- a/src/main/java/com/indexdata/mkjsf/pazpar2/state/Pazpar2State.java +++ b/src/main/java/com/indexdata/mkjsf/pazpar2/state/Pazpar2State.java @@ -14,6 +14,9 @@ import com.indexdata.mkjsf.pazpar2.commands.SettingsCommand; import com.indexdata.mkjsf.pazpar2.commands.ShowCommand; import com.indexdata.mkjsf.pazpar2.commands.StatCommand; import com.indexdata.mkjsf.pazpar2.commands.TermlistCommand; +import com.indexdata.mkjsf.pazpar2.commands.sp.AuthCommand; +import com.indexdata.mkjsf.pazpar2.commands.sp.CategoriesCommand; +import com.indexdata.mkjsf.pazpar2.commands.sp.ServiceProxyCommands; /** * Holds a 'pazpar2 state', understood as a full set of pazpar2 commands and @@ -36,8 +39,11 @@ public class Pazpar2State { commands.put(Pazpar2Commands.SHOW, new ShowCommand(mgr)); commands.put(Pazpar2Commands.RECORD, new RecordCommand(mgr)); commands.put(Pazpar2Commands.TERMLIST, new TermlistCommand(mgr)); - commands.put(Pazpar2Commands.BYTARGET, new BytargetCommand(mgr)); - key = "#1"; + commands.put(Pazpar2Commands.BYTARGET, new BytargetCommand(mgr)); + + commands.put(ServiceProxyCommands.AUTH, new AuthCommand(mgr)); + commands.put(ServiceProxyCommands.CATEGORIES, new CategoriesCommand(mgr)); + // key = "#1"; } /** @@ -51,7 +57,7 @@ public class Pazpar2State { for (String commandName : previousState.commands.keySet()) { this.commands.put(commandName, previousState.commands.get(commandName).copy()); } - this.commands.put(newCommand.getName(),newCommand); + this.commands.put(newCommand.getCommandName(),newCommand); this.key = getKey(); } @@ -65,12 +71,14 @@ public class Pazpar2State { if (key == null) { StringBuilder querystatebuilder = new StringBuilder(""); for (Pazpar2Command command : commands.values()) { - if (command.hasParameters()) { - querystatebuilder.append("||"+command.getName()+"::"); - querystatebuilder.append(command.getValueWithExpressions()); - } + if (! (command instanceof AuthCommand )) { + if (command.hasParameters()) { + querystatebuilder.append("||"+command.getCommandName()+"::"); + querystatebuilder.append(command.getValueWithExpressions()); + } + } } - key = "#"+querystatebuilder.toString().hashCode(); + key = "#"+querystatebuilder.toString(); return key; } else { return key; @@ -86,9 +94,9 @@ public class Pazpar2State { public boolean stateMutating (Pazpar2Command command) { if (command == null) { return true; - } else if (commands.get(command.getName()) == null) { + } else if (commands.get(command.getCommandName()) == null) { return true; - } else if ((command.equals(commands.get(command.getName())))) { + } else if ((command.equals(commands.get(command.getCommandName())))) { return false; } else { return true;