1
22
23 package com.liferay.portlet.documentlibrary.webdav;
24
25 import com.liferay.portal.util.ContentTypeUtil;
26 import com.liferay.portal.webdav.BaseResourceImpl;
27 import com.liferay.portal.webdav.WebDAVException;
28 import com.liferay.portal.webdav.WebDAVRequest;
29 import com.liferay.portlet.documentlibrary.model.DLFileEntry;
30 import com.liferay.portlet.documentlibrary.service.DLFileEntryLocalServiceUtil;
31 import com.liferay.portlet.documentlibrary.service.DLFileEntryServiceUtil;
32
33 import java.io.InputStream;
34
35
40 public class DLFileEntryResourceImpl extends BaseResourceImpl {
41
42 public DLFileEntryResourceImpl(
43 WebDAVRequest webDavRequest, DLFileEntry fileEntry, String parentPath,
44 String name) {
45
46 super(
47 parentPath, name, fileEntry.getTitleWithExtension(),
48 fileEntry.getCreateDate(), fileEntry.getModifiedDate(),
49 fileEntry.getSize());
50
51 setModel(fileEntry);
52 setClassName(DLFileEntry.class.getName());
53 setPrimaryKey(fileEntry.getPrimaryKey());
54
55 _webDavRequest = webDavRequest;
56 _fileEntry = fileEntry;
57 }
58
59 public boolean isCollection() {
60 return false;
61 }
62
63 public boolean isLocked() {
64 try {
65 DLFileEntryServiceUtil.getFileEntryLock(
66 _fileEntry.getFolderId(), _fileEntry.getName());
67
68 return true;
69 }
70 catch (Exception e) {
71 }
72
73 return false;
74 }
75
76 public String getContentType() {
77 return ContentTypeUtil.getContentType(_fileEntry.getName());
78 }
79
80 public InputStream getContentAsStream() throws WebDAVException {
81 try {
82 return DLFileEntryLocalServiceUtil.getFileAsStream(
83 _webDavRequest.getCompanyId(), _webDavRequest.getUserId(),
84 _fileEntry.getFolderId(), _fileEntry.getName());
85 }
86 catch (Exception e) {
87 throw new WebDAVException(e);
88 }
89 }
90
91 private WebDAVRequest _webDavRequest;
92 private DLFileEntry _fileEntry;
93
94 }