001
014
015 package com.liferay.portal.webdav.methods;
016
017 import com.liferay.portal.kernel.webdav.Resource;
018 import com.liferay.portal.kernel.webdav.WebDAVException;
019 import com.liferay.portal.kernel.webdav.WebDAVRequest;
020 import com.liferay.portal.kernel.webdav.WebDAVStorage;
021 import com.liferay.portal.kernel.webdav.methods.Method;
022
023 import javax.servlet.http.HttpServletResponse;
024
025
029 public class HeadMethodImpl implements Method {
030
031 @Override
032 public int process(WebDAVRequest webDAVRequest) throws WebDAVException {
033 try {
034 WebDAVStorage storage = webDAVRequest.getWebDAVStorage();
035 HttpServletResponse response =
036 webDAVRequest.getHttpServletResponse();
037
038 Resource resource = storage.getResource(webDAVRequest);
039
040 if (resource == null) {
041 return HttpServletResponse.SC_NOT_FOUND;
042 }
043
044 if (!resource.isCollection()) {
045 response.setContentLength((int)resource.getSize());
046 }
047
048 return HttpServletResponse.SC_OK;
049 }
050 catch (Exception e) {
051 throw new WebDAVException(e);
052 }
053 }
054
055 }