X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fcom%2Findexdata%2Fmkjsf%2Fpazpar2%2Fcommands%2FPazpar2Command.java;h=a67f829ada50fb40968e0995e93a2f4996718134;hb=46440016f16326b6004b03b74582596b532f0261;hp=871eb3048b552da0918672926f45d94395070496;hpb=78cce328039810027616b0dfe4fb3362f5b573af;p=mkjsf-moved-to-github.git diff --git a/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Pazpar2Command.java b/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Pazpar2Command.java index 871eb30..a67f829 100644 --- a/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Pazpar2Command.java +++ b/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Pazpar2Command.java @@ -25,13 +25,13 @@ public abstract class Pazpar2Command implements Serializable { public abstract Pazpar2Command copy (); - public String getName() { + public String getCommandName() { return name; } public void setParameter (CommandParameter parameter) { Pazpar2Command copy = this.copy(); - logger.debug(name + " command: setting parameter [" + parameter.getName() + "=" + parameter.getValueWithExpressions() + "]"); + logger.trace(name + " command: setting parameter [" + parameter.getName() + "=" + parameter.getValueWithExpressions() + "]"); copy.parameters.put(parameter.getName(),parameter); checkInState(copy); } @@ -39,7 +39,7 @@ public abstract class Pazpar2Command implements Serializable { public void setParameters (CommandParameter... params) { Pazpar2Command copy = this.copy(); for (CommandParameter param : params) { - logger.debug(name + " command: setting parameter [" + param.getName() + "=" + param.getValueWithExpressions() + "]"); + logger.trace(name + " command: setting parameter [" + param.getName() + "=" + param.getValueWithExpressions() + "]"); copy.parameters.put(param.getName(),param); } checkInState(copy); @@ -47,13 +47,13 @@ public abstract class Pazpar2Command implements Serializable { public void setParametersInState (CommandParameter... params) { for (CommandParameter param : params) { - logger.debug(name + " command: setting parameter [" + param.getName() + "=" + param.getValueWithExpressions() + "] silently"); + logger.trace(name + " command: setting parameter [" + param.getName() + "=" + param.getValueWithExpressions() + "] silently"); parameters.put(param.getName(),param); } } public void setParameterInState (CommandParameter parameter) { - logger.debug(name + " command: setting parameter [" + parameter.getName() + "=" + parameter.getValueWithExpressions() + "] silently"); + logger.trace(name + " command: setting parameter [" + parameter.getName() + "=" + parameter.getValueWithExpressions() + "] silently"); parameters.put(parameter.getName(),parameter); } @@ -83,14 +83,16 @@ public abstract class Pazpar2Command implements Serializable { return (parameters.keySet().size()>0); } - public boolean hasParameterSet(String parameterName) { - return (parameters.get(parameterName) != null); + public boolean hasParameterValue(String parameterName) { + return (parameters.get(parameterName) != null && parameters.get(parameterName).hasValue()); } public String getEncodedQueryString () { StringBuilder queryString = new StringBuilder("command="+name); for (CommandParameter parameter : parameters.values()) { - queryString.append("&"+parameter.getEncodedQueryString()); + if (parameter.hasValue()) { + queryString.append("&"+parameter.getEncodedQueryString()); + } } return queryString.toString(); } @@ -98,7 +100,9 @@ public abstract class Pazpar2Command implements Serializable { public String getValueWithExpressions() { StringBuilder value = new StringBuilder(""); for (CommandParameter parameter : parameters.values()) { - value.append("&" + parameter.getName() + parameter.operator + parameter.getValueWithExpressions()); + if (parameter.hasValue()) { + value.append("&" + parameter.getName() + parameter.operator + parameter.getValueWithExpressions()); + } } return value.toString(); } @@ -140,10 +144,11 @@ public abstract class Pazpar2Command implements Serializable { if (stateMgr != null) { stateMgr.checkIn(command); } else { - logger.info("Command '" + command.getName() + "' not affecting state (history) as no state manager was defined for this command."); + logger.info("Command '" + command.getCommandName() + "' not affecting state (history) as no state manager was defined for this command."); } } public abstract ServiceProxyCommand getSp(); - + + public abstract boolean spOnly(); }