List of usage examples for com.liferay.portal.kernel.webdav WebDAVRequest isAppleDoubleRequest
public boolean isAppleDoubleRequest();
From source file:com.liferay.compat.hook.webdav.CompatDLWebDAVStorageImpl.java
License:Open Source License
public boolean unlockResource(WebDAVRequest webDAVRequest, String token) throws WebDAVException { Resource resource = getResource(webDAVRequest); try {//from www .j av a 2 s.c o m if (isInstanceOfDLFileEntryResourceImpl(super.getResource(webDAVRequest))) { FileEntry fileEntry = (FileEntry) resource.getModel(); // Do not allow WebDAV to check in a file entry if it requires a // manual check in if (isManualCheckInRequired(fileEntry)) { return false; } ServiceContext serviceContext = new ServiceContext(); serviceContext.setAttribute(DLUtil.WEBDAV_CHECK_IN_MODE, true); ServiceContextThreadLocal.pushServiceContext(serviceContext); try { DLAppServiceUtil.checkInFileEntry(fileEntry.getFileEntryId(), token); } finally { ServiceContextThreadLocal.popServiceContext(); } if (webDAVRequest.isAppleDoubleRequest()) { DLAppServiceUtil.deleteFileEntry(fileEntry.getFileEntryId()); } } else { Folder folder = (Folder) resource.getModel(); DLAppServiceUtil.unlockFolder(folder.getRepositoryId(), folder.getParentFolderId(), folder.getName(), token); } return true; } catch (Exception e) { if (e instanceof InvalidLockException) { if (_log.isWarnEnabled()) { _log.warn(e.getMessage()); } } else { if (_log.isWarnEnabled()) { _log.warn("Unable to unlock file entry", e); } } } return false; }
From source file:com.liferay.document.library.web.internal.webdav.DLWebDAVStorageImpl.java
License:Open Source License
@Override public int deleteResource(WebDAVRequest webDAVRequest) throws WebDAVException { try {// www . ja v a 2 s. co m Resource resource = getResource(webDAVRequest); if (resource == null) { if (webDAVRequest.isAppleDoubleRequest()) { return HttpServletResponse.SC_NO_CONTENT; } else { return HttpServletResponse.SC_NOT_FOUND; } } Object model = resource.getModel(); if (model instanceof Folder) { Folder folder = (Folder) model; long folderId = folder.getFolderId(); if ((folder.getModel() instanceof DLFolder) && _dlTrashUtil.isTrashEnabled(folder.getGroupId(), folder.getRepositoryId())) { _dlTrashService.moveFolderToTrash(folderId); } else { _dlAppService.deleteFolder(folderId); } } else { FileEntry fileEntry = (FileEntry) model; if (!hasLock(fileEntry, webDAVRequest.getLockUuid()) && (fileEntry.getLock() != null)) { return WebDAVUtil.SC_LOCKED; } long fileEntryId = fileEntry.getFileEntryId(); if ((fileEntry.getModel() instanceof DLFileEntry) && _dlTrashUtil.isTrashEnabled(fileEntry.getGroupId(), fileEntry.getRepositoryId())) { _dlTrashService.moveFileEntryToTrash(fileEntryId); } else { _dlAppService.deleteFileEntry(fileEntryId); } } return HttpServletResponse.SC_NO_CONTENT; } catch (PrincipalException pe) { if (_log.isDebugEnabled()) { _log.debug(pe, pe); } return HttpServletResponse.SC_FORBIDDEN; } catch (Exception e) { throw new WebDAVException(e); } }
From source file:com.liferay.document.library.web.internal.webdav.DLWebDAVStorageImpl.java
License:Open Source License
@Override public boolean unlockResource(WebDAVRequest webDAVRequest, String token) throws WebDAVException { Resource resource = getResource(webDAVRequest); try {/*from w ww. jav a 2 s . com*/ if (resource instanceof DLFileEntryResourceImpl) { FileEntry fileEntry = (FileEntry) resource.getModel(); // Do not allow WebDAV to check in a file entry if it requires a // manual check in if (fileEntry.isManualCheckInRequired()) { return false; } ServiceContext serviceContext = new ServiceContext(); serviceContext.setAttribute(DL.WEBDAV_CHECK_IN_MODE, Boolean.TRUE); _dlAppService.checkInFileEntry(fileEntry.getFileEntryId(), token, serviceContext); if (webDAVRequest.isAppleDoubleRequest()) { _dlAppService.deleteFileEntry(fileEntry.getFileEntryId()); } } else { Folder folder = (Folder) resource.getModel(); _dlAppService.unlockFolder(folder.getRepositoryId(), folder.getParentFolderId(), folder.getName(), token); } return true; } catch (InvalidLockException ile) { if (_log.isWarnEnabled()) { _log.warn(ile.getMessage()); } } catch (Exception e) { if (_log.isWarnEnabled()) { _log.warn("Unable to unlock file entry", e); } } return false; }
From source file:com.liferay.document.library.web.webdav.DLWebDAVStorageImpl.java
License:Open Source License
@Override public int deleteResource(WebDAVRequest webDAVRequest) throws WebDAVException { try {/*from w ww.j av a 2 s .c o m*/ Resource resource = getResource(webDAVRequest); if (resource == null) { if (webDAVRequest.isAppleDoubleRequest()) { return HttpServletResponse.SC_NO_CONTENT; } else { return HttpServletResponse.SC_NOT_FOUND; } } Object model = resource.getModel(); if (model instanceof Folder) { Folder folder = (Folder) model; long folderId = folder.getFolderId(); if ((folder.getModel() instanceof DLFolder) && DLTrashUtil.isTrashEnabled(folder.getGroupId(), folder.getRepositoryId())) { _dlTrashService.moveFolderToTrash(folderId); } else { _dlAppService.deleteFolder(folderId); } } else { FileEntry fileEntry = (FileEntry) model; if (!hasLock(fileEntry, webDAVRequest.getLockUuid()) && (fileEntry.getLock() != null)) { return WebDAVUtil.SC_LOCKED; } long fileEntryId = fileEntry.getFileEntryId(); if ((fileEntry.getModel() instanceof DLFileEntry) && DLTrashUtil.isTrashEnabled(fileEntry.getGroupId(), fileEntry.getRepositoryId())) { _dlTrashService.moveFileEntryToTrash(fileEntryId); } else { _dlAppService.deleteFileEntry(fileEntryId); } } return HttpServletResponse.SC_NO_CONTENT; } catch (PrincipalException pe) { if (_log.isDebugEnabled()) { _log.debug(pe, pe); } return HttpServletResponse.SC_FORBIDDEN; } catch (Exception e) { throw new WebDAVException(e); } }
From source file:com.liferay.portlet.documentlibrary.webdav.DLWebDAVStorageImpl.java
License:Open Source License
@Override public int deleteResource(WebDAVRequest webDavRequest) throws WebDAVException { try {// w ww . j a v a 2s . c o m Resource resource = getResource(webDavRequest); if (resource == null) { if (webDavRequest.isAppleDoubleRequest()) { return HttpServletResponse.SC_NO_CONTENT; } else { return HttpServletResponse.SC_NOT_FOUND; } } Object model = resource.getModel(); if (model instanceof Folder) { Folder folder = (Folder) model; DLAppServiceUtil.deleteFolder(folder.getFolderId()); } else { FileEntry fileEntry = (FileEntry) model; if (!hasLock(fileEntry, webDavRequest.getLockUuid()) && (fileEntry.getLock() != null)) { return WebDAVUtil.SC_LOCKED; } DLAppServiceUtil.deleteFileEntry(fileEntry.getFileEntryId()); } return HttpServletResponse.SC_NO_CONTENT; } catch (PrincipalException pe) { return HttpServletResponse.SC_FORBIDDEN; } catch (Exception e) { throw new WebDAVException(e); } }
From source file:com.liferay.portlet.documentlibrary.webdav.DLWebDAVStorageImpl.java
License:Open Source License
@Override public boolean unlockResource(WebDAVRequest webDavRequest, String token) throws WebDAVException { Resource resource = getResource(webDavRequest); try {//from w ww .j a v a2s . c om if (resource instanceof DLFileEntryResourceImpl) { FileEntry fileEntry = (FileEntry) resource.getModel(); DLAppServiceUtil.unlockFileEntry(fileEntry.getFileEntryId(), token); if (webDavRequest.isAppleDoubleRequest()) { DLAppServiceUtil.deleteFileEntry(fileEntry.getFileEntryId()); } } else { Folder folder = (Folder) resource.getModel(); DLAppServiceUtil.unlockFolder(folder.getRepositoryId(), folder.getParentFolderId(), folder.getName(), token); } return true; } catch (Exception e) { if (e instanceof InvalidLockException) { if (_log.isWarnEnabled()) { _log.warn(e.getMessage()); } } else { if (_log.isWarnEnabled()) { _log.warn("Unable to unlock file entry", e); } } } return false; }