1
22
23 package com.liferay.portal.sharepoint.methods;
24
25 import com.liferay.portal.kernel.util.ArrayUtil;
26 import com.liferay.portal.kernel.util.FileUtil;
27 import com.liferay.portal.kernel.util.StringPool;
28 import com.liferay.portal.sharepoint.Property;
29 import com.liferay.portal.sharepoint.ResponseElement;
30 import com.liferay.portal.sharepoint.SharepointRequest;
31 import com.liferay.portal.sharepoint.SharepointStorage;
32 import com.liferay.portal.sharepoint.Tree;
33 import com.liferay.util.servlet.ServletResponseUtil;
34
35 import java.io.InputStream;
36
37 import java.util.ArrayList;
38 import java.util.List;
39
40
45 public class GetDocumentMethodImpl extends BaseMethodImpl {
46
47 public String getMethodName() {
48 return _METHOD_NAME;
49 }
50
51 public String getRootPath(SharepointRequest sharepointRequest) {
52 return sharepointRequest.getParameterValue("document_name");
53 }
54
55 protected void doProcess(SharepointRequest sharepointRequest)
56 throws Exception {
57
58 SharepointStorage storage = sharepointRequest.getSharepointStorage();
59
60 StringBuilder sb = getResponseBuffer(sharepointRequest);
61
62 sb.append(StringPool.NEW_LINE);
63
64 InputStream is = storage.getDocumentInputStream(sharepointRequest);
65
66 byte[] bytes = ArrayUtil.append(
67 sb.toString().getBytes(), FileUtil.getBytes(is));
68
69 ServletResponseUtil.write(
70 sharepointRequest.getHttpServletResponse(), bytes);
71 }
72
73 protected List<ResponseElement> getElements(
74 SharepointRequest sharepointRequest)
75 throws Exception {
76
77 List<ResponseElement> elements = new ArrayList<ResponseElement>();
78
79 SharepointStorage storage = sharepointRequest.getSharepointStorage();
80
81 elements.add(new Property("message", StringPool.BLANK));
82
83 Tree documentTree = storage.getDocumentTree(sharepointRequest);
84
85 Property documentProperty = new Property("document", documentTree);
86
87 elements.add(documentProperty);
88
89 return elements;
90 }
91
92 private static final String _METHOD_NAME = "get document";
93
94 }