X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fcom%2Findexdata%2Fmkjsf%2Fpazpar2%2Fcommands%2FInitCommand.java;h=874387437315e3060de784825993165c86f9dee3;hb=6c92dd9a72ae1fa27dd061c1897531879b8c0ba6;hp=144a1a7a3ca250ce0fdfc3a43fc05f047c1ae772;hpb=78cce328039810027616b0dfe4fb3362f5b573af;p=mkjsf-moved-to-github.git
diff --git a/src/main/java/com/indexdata/mkjsf/pazpar2/commands/InitCommand.java b/src/main/java/com/indexdata/mkjsf/pazpar2/commands/InitCommand.java
index 144a1a7..8743874 100644
--- a/src/main/java/com/indexdata/mkjsf/pazpar2/commands/InitCommand.java
+++ b/src/main/java/com/indexdata/mkjsf/pazpar2/commands/InitCommand.java
@@ -1,44 +1,96 @@
package com.indexdata.mkjsf.pazpar2.commands;
+import org.apache.log4j.Logger;
+
+import com.indexdata.mkjsf.pazpar2.commands.sp.InitCommandSp;
import com.indexdata.mkjsf.pazpar2.commands.sp.ServiceProxyCommand;
-import com.indexdata.mkjsf.pazpar2.state.StateManager;
+/**
+ * init
Pazpar2 command, referenced as: pzreq.init
+ *
+ * @author Niels Erik
+ *
+ */
public class InitCommand extends Pazpar2Command implements ServiceProxyCommand {
private static final long serialVersionUID = -4915976465898889987L;
-
- public InitCommand(StateManager stateMgr) {
- super("init",stateMgr);
+ private static Logger logger = Logger.getLogger(InitCommand.class);
+ private InitCommandSp spCommand = null;
+
+ public InitCommand() {
+ super("init");
}
+ /**
+ * Sets the clear
parameter. See Pazpar2 documentation for details.
+ *
+ * @param clear
+ */
public void setClear(String clear) {
setParameterInState(new CommandParameter("clear","=",clear));
}
+
+ /**
+ * Returns the clear
parameter value.
+ */
+ public String getClear() {
+ return getParameterValue("clear");
+ }
+ /**
+ * Sets the service
parameter. See Pazpar2 documentation for details.
+ * @param serviceId
+ */
public void setService(String serviceId) {
setParameterInState(new CommandParameter("service","=",serviceId));
}
+ /**
+ * Returns the service
parameter value.
+ */
+ public String getService() {
+ return getParameterValue("service");
+ }
+
+ /**
+ * Disabled, not supported for init
+ */
@Override
public void setSession (String sessionId) {
throw new UnsupportedOperationException("Cannot set session id on init command");
}
-
+
+ /**
+ * Disabled, not supported for init
+ */
@Override
public String getSession () {
throw new UnsupportedOperationException("Cannot set or get session id on init command");
- }
+ }
public InitCommand copy () {
- InitCommand newCommand = new InitCommand(stateMgr);
+ logger.info("Copying init command");
+ InitCommand newCommand = new InitCommand();
for (String parameterName : parameters.keySet()) {
newCommand.setParameterInState(parameters.get(parameterName).copy());
- }
+ }
+ newCommand.spCommand = new InitCommandSp(this);
+ if (spCommand != null && spCommand.getUploadedInitDoc()!=null) {
+ newCommand.spCommand.setUploadedInitDoc(spCommand.getUploadedInitDoc());
+ }
return newCommand;
}
public ServiceProxyCommand getSp() {
- return this;
+ if (spCommand==null) {
+ spCommand = new InitCommandSp(this);
+ }
+ return spCommand;
+ }
+
+ @Override
+ public boolean spOnly() {
+ return false;
}