629c07c8de953424de1dfe08d649cb78fefcf4e6
[mkjsf-moved-to-github.git] / src / main / java / com / indexdata / mkjsf / pazpar2 / commands / sp / InitCommandSp.java
1 package com.indexdata.mkjsf.pazpar2.commands.sp;\r
2 \r
3 import java.io.IOException;\r
4 import java.io.Serializable;\r
5 \r
6 import org.apache.log4j.Logger;\r
7 import org.apache.myfaces.custom.fileupload.UploadedFile;\r
8 \r
9 import com.indexdata.mkjsf.pazpar2.ClientCommandResponse;\r
10 import com.indexdata.mkjsf.pazpar2.HttpResponseWrapper;\r
11 import com.indexdata.mkjsf.pazpar2.Pz2Service;\r
12 import com.indexdata.mkjsf.pazpar2.commands.CommandParameter;\r
13 import com.indexdata.mkjsf.pazpar2.commands.InitCommand;\r
14 import com.indexdata.mkjsf.pazpar2.data.ResponseDataObject;\r
15 import com.indexdata.mkjsf.pazpar2.data.ResponseParser;\r
16 import com.indexdata.mkjsf.pazpar2.data.sp.SpResponseDataObject;\r
17 \r
18 public class InitCommandSp implements Serializable, ServiceProxyCommand {\r
19 \r
20   private static final long serialVersionUID = -6609045941782375651L;\r
21   private static Logger logger = Logger.getLogger(InitCommandSp.class);\r
22   private InitCommand command = null;\r
23   \r
24   private InitDocUpload initDocUpload;\r
25 \r
26   public InitCommandSp(InitCommand initCommand) {\r
27     this.command=initCommand;\r
28     initDocUpload = new InitDocUpload();\r
29   }\r
30   \r
31   public void setIncludeDebug (String includeDebug) {\r
32     command.setParameterInState(new CommandParameter("includeDebug","=",includeDebug));\r
33   }\r
34   \r
35   public String getIncludeDebug () {\r
36     return command.getParameterValue("includeDebug");\r
37   }\r
38 \r
39   public void setUploadedInitDoc (UploadedFile uploadedFile) {\r
40     initDocUpload.setUploadedFile(uploadedFile);\r
41   }\r
42   \r
43   public UploadedFile getUploadedInitDoc () {\r
44     logger.info("initDocUpload is: " + initDocUpload );\r
45     logger.info("initDocUpload.getUploadedFile() is: " +initDocUpload.getUploadedFile());\r
46     return initDocUpload.getUploadedFile();\r
47   }\r
48   \r
49   public void downloadInitDoc () throws IOException {\r
50     initDocUpload.downloadDoc();\r
51   }\r
52   \r
53   public SpResponseDataObject run() {\r
54     Pz2Service.get().resetSearchAndRecordCommands();\r
55     Pz2Service.get().getPzresp().getSp().resetAuthAndBeyond(true);    \r
56     try {\r
57       byte[] bytes = getUploadedInitDoc().getBytes();\r
58       HttpResponseWrapper response = Pz2Service.get().getSpClient().postInitDoc(bytes,getIncludeDebug().equals("yes"));    \r
59       ResponseDataObject responseObject = ResponseParser.getParser().getDataObject((ClientCommandResponse)response);    \r
60       Pz2Service.get().getPzresp().put("init", responseObject);\r
61     } catch (IOException e) {\r
62       // TODO Auto-generated catch block\r
63       e.printStackTrace();\r
64     }\r
65     return null;\r
66   }\r
67 \r
68   @Override\r
69   public boolean spOnly() {\r
70     return true;\r
71   }\r
72   \r
73   \r
74   \r
75 }\r