Example usage for com.liferay.portal.kernel.repository.model FileShortcut getToFileEntryId

List of usage examples for com.liferay.portal.kernel.repository.model FileShortcut getToFileEntryId

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.repository.model FileShortcut getToFileEntryId.

Prototype

public long getToFileEntryId();

Source Link

Usage

From source file:com.liferay.document.library.internal.exportimport.data.handler.FileShortcutStagedModelDataHandler.java

License:Open Source License

@Override
protected void doExportStagedModel(PortletDataContext portletDataContext, FileShortcut fileShortcut)
        throws Exception {

    if (fileShortcut.getFolderId() != DLFolderConstants.DEFAULT_PARENT_FOLDER_ID) {

        StagedModelDataHandlerUtil.exportReferenceStagedModel(portletDataContext, fileShortcut,
                fileShortcut.getFolder(), PortletDataContext.REFERENCE_TYPE_PARENT);
    }/*ww  w.j  a  va2s . co  m*/

    FileEntry fileEntry = _dlAppLocalService.getFileEntry(fileShortcut.getToFileEntryId());

    StagedModelDataHandlerUtil.exportReferenceStagedModel(portletDataContext, fileShortcut, fileEntry,
            PortletDataContext.REFERENCE_TYPE_STRONG);

    Element fileShortcutElement = portletDataContext.getExportDataElement(fileShortcut);

    portletDataContext.addClassedModel(fileShortcutElement, ExportImportPathUtil.getModelPath(fileShortcut),
            fileShortcut);
}

From source file:com.liferay.document.library.internal.exportimport.data.handler.FileShortcutStagedModelDataHandler.java

License:Open Source License

@Override
protected void doImportStagedModel(PortletDataContext portletDataContext, FileShortcut fileShortcut)
        throws Exception {

    long userId = portletDataContext.getUserId(fileShortcut.getUserUuid());

    Map<Long, Long> folderIds = (Map<Long, Long>) portletDataContext.getNewPrimaryKeysMap(Folder.class);

    long folderId = MapUtil.getLong(folderIds, fileShortcut.getFolderId(), fileShortcut.getFolderId());

    long groupId = portletDataContext.getScopeGroupId();

    if (folderId != DLFolderConstants.DEFAULT_PARENT_FOLDER_ID) {
        Folder folder = FolderUtil.findByPrimaryKey(folderId);

        groupId = folder.getRepositoryId();
    }//  w w w .j a  v  a  2s  .co  m

    Map<Long, Long> fileEntryIds = (Map<Long, Long>) portletDataContext.getNewPrimaryKeysMap(FileEntry.class);

    long fileEntryId = MapUtil.getLong(fileEntryIds, fileShortcut.getToFileEntryId(),
            fileShortcut.getToFileEntryId());

    FileEntry importedFileEntry = null;

    try {
        importedFileEntry = _dlAppLocalService.getFileEntry(fileEntryId);
    } catch (PortalException pe) {
        if (_log.isWarnEnabled()) {
            _log.warn("Unable to fetch file entry " + fileEntryId, pe);
        }

        return;
    }

    ServiceContext serviceContext = portletDataContext.createServiceContext(fileShortcut);

    FileShortcut importedFileShortcut = null;

    if (portletDataContext.isDataStrategyMirror()) {
        FileShortcut existingFileShortcut = fetchStagedModelByUuidAndGroupId(fileShortcut.getUuid(),
                portletDataContext.getScopeGroupId());

        if (existingFileShortcut == null) {
            serviceContext.setUuid(fileShortcut.getUuid());

            importedFileShortcut = _dlAppLocalService.addFileShortcut(userId, groupId, folderId,
                    importedFileEntry.getFileEntryId(), serviceContext);
        } else {
            importedFileShortcut = _dlAppLocalService.updateFileShortcut(userId,
                    existingFileShortcut.getFileShortcutId(), folderId, importedFileEntry.getFileEntryId(),
                    serviceContext);
        }
    } else {
        importedFileShortcut = _dlAppLocalService.addFileShortcut(userId, groupId, folderId,
                importedFileEntry.getFileEntryId(), serviceContext);
    }

    portletDataContext.importClassedModel(fileShortcut, importedFileShortcut);
}

From source file:com.liferay.document.library.jaxrs.FolderResource.java

License:Open Source License

protected RepositoryContentObject toObjectRepository(Object rco) {
    if (rco instanceof FileEntry) {
        FileEntry fileEntry = (FileEntry) rco;

        String url = _fileUriBuilder.build(fileEntry.getFileEntryId()).toString();

        return new RepositoryContentObject(fileEntry.getFileEntryId(), fileEntry.getTitle(), url,
                RepositoryContentObject.RepositoryContentType.FILE, fileEntry.getCreateDate(),
                fileEntry.getModifiedDate());
    } else if (rco instanceof Folder) {
        Folder folder = (Folder) rco;/*from w ww.j a v a  2 s  .c o m*/

        String url = _folderUriBuilder.build(Long.toString(folder.getFolderId())).toString();

        return new RepositoryContentObject(folder.getFolderId(), folder.getName(), url,
                RepositoryContentObject.RepositoryContentType.FOLDER, folder.getCreateDate(),
                folder.getModifiedDate());
    } else if (rco instanceof FileShortcut) {
        FileShortcut fileShortcut = (FileShortcut) rco;

        String url = _fileUriBuilder.build(Long.toString(fileShortcut.getToFileEntryId())).toString();

        return new RepositoryContentObject(fileShortcut.getFileShortcutId(), fileShortcut.getToTitle(), url,
                RepositoryContentObject.RepositoryContentType.SHORTCUT, fileShortcut.getCreateDate(),
                fileShortcut.getModifiedDate());
    } else {
        throw new IllegalArgumentException(
                "Object must be an instance of FileEntry, Folder of " + "FileShortcut");
    }
}

From source file:com.liferay.document.library.web.internal.portlet.action.DownloadEntriesMVCResourceCommand.java

License:Open Source License

protected void downloadFileEntries(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws Exception {

    ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY);

    long folderId = ParamUtil.getLong(resourceRequest, "folderId");

    File file = null;/*from  w w  w.  j ava2s .co m*/
    InputStream inputStream = null;

    try {
        List<FileEntry> fileEntries = ActionUtil.getFileEntries(resourceRequest);

        List<FileShortcut> fileShortcuts = ActionUtil.getFileShortcuts(resourceRequest);

        List<Folder> folders = ActionUtil.getFolders(resourceRequest);

        if (fileEntries.isEmpty() && fileShortcuts.isEmpty() && folders.isEmpty()) {

            return;
        } else if ((fileEntries.size() == 1) && fileShortcuts.isEmpty() && folders.isEmpty()) {

            FileEntry fileEntry = fileEntries.get(0);

            PortletResponseUtil.sendFile(resourceRequest, resourceResponse, fileEntry.getFileName(),
                    fileEntry.getContentStream(), 0, fileEntry.getMimeType(),
                    HttpHeaders.CONTENT_DISPOSITION_ATTACHMENT);
        } else if ((fileShortcuts.size() == 1) && fileEntries.isEmpty() && folders.isEmpty()) {

            FileShortcut fileShortcut = fileShortcuts.get(0);

            FileEntry fileEntry = _dlAppService.getFileEntry(fileShortcut.getToFileEntryId());

            PortletResponseUtil.sendFile(resourceRequest, resourceResponse, fileEntry.getFileName(),
                    fileEntry.getContentStream(), 0, fileEntry.getMimeType(),
                    HttpHeaders.CONTENT_DISPOSITION_ATTACHMENT);
        } else {
            String zipFileName = getZipFileName(folderId, themeDisplay);

            ZipWriter zipWriter = ZipWriterFactoryUtil.getZipWriter();

            for (FileEntry fileEntry : fileEntries) {
                zipFileEntry(fileEntry, StringPool.SLASH, zipWriter);
            }

            for (FileShortcut fileShortcut : fileShortcuts) {
                FileEntry fileEntry = _dlAppService.getFileEntry(fileShortcut.getToFileEntryId());

                zipFileEntry(fileEntry, StringPool.SLASH, zipWriter);
            }

            for (Folder folder : folders) {
                zipFolder(folder.getRepositoryId(), folder.getFolderId(),
                        StringPool.SLASH.concat(folder.getName()), zipWriter);
            }

            file = zipWriter.getFile();

            inputStream = new FileInputStream(file);

            PortletResponseUtil.sendFile(resourceRequest, resourceResponse, zipFileName, inputStream,
                    ContentTypes.APPLICATION_ZIP);
        }
    } finally {
        StreamUtil.cleanUp(inputStream);

        if (file != null) {
            file.delete();
        }
    }
}

From source file:com.liferay.document.library.web.internal.portlet.action.DownloadEntriesMVCResourceCommand.java

License:Open Source License

protected void zipFolder(long repositoryId, long folderId, String path, ZipWriter zipWriter) throws Exception {

    List<Object> foldersAndFileEntriesAndFileShortcuts = _dlAppService.getFoldersAndFileEntriesAndFileShortcuts(
            repositoryId, folderId, WorkflowConstants.STATUS_APPROVED, false, QueryUtil.ALL_POS,
            QueryUtil.ALL_POS);// w w  w  .  j  a v  a 2s . c  om

    for (Object entry : foldersAndFileEntriesAndFileShortcuts) {
        if (entry instanceof Folder) {
            Folder folder = (Folder) entry;

            zipFolder(folder.getRepositoryId(), folder.getFolderId(),
                    path.concat(StringPool.SLASH).concat(folder.getName()), zipWriter);
        } else if (entry instanceof FileEntry) {
            zipFileEntry((FileEntry) entry, path, zipWriter);
        } else if (entry instanceof FileShortcut) {
            FileShortcut fileShortcut = (FileShortcut) entry;

            FileEntry fileEntry = _dlAppService.getFileEntry(fileShortcut.getToFileEntryId());

            zipFileEntry(fileEntry, path, zipWriter);
        }
    }
}

From source file:com.liferay.document.library.web.internal.portlet.action.EditEntryMVCActionCommand.java

License:Open Source License

protected void moveEntries(ActionRequest actionRequest) throws Exception {
    long newFolderId = ParamUtil.getLong(actionRequest, "newFolderId");

    ServiceContext serviceContext = ServiceContextFactory.getInstance(DLFileEntry.class.getName(),
            actionRequest);//from w w  w  .j av a 2  s  . c o  m

    long[] folderIds = ParamUtil.getLongValues(actionRequest, "rowIdsFolder");

    for (long folderId : folderIds) {
        _dlAppService.moveFolder(folderId, newFolderId, serviceContext);
    }

    long[] fileEntryIds = ParamUtil.getLongValues(actionRequest, "rowIdsFileEntry");

    for (long fileEntryId : fileEntryIds) {
        _dlAppService.moveFileEntry(fileEntryId, newFolderId, serviceContext);
    }

    long[] fileShortcutIds = ParamUtil.getLongValues(actionRequest, "rowIdsDLFileShortcut");

    for (long fileShortcutId : fileShortcutIds) {
        if (fileShortcutId == 0) {
            continue;
        }

        FileShortcut fileShortcut = _dlAppService.getFileShortcut(fileShortcutId);

        _dlAppService.updateFileShortcut(fileShortcutId, newFolderId, fileShortcut.getToFileEntryId(),
                serviceContext);
    }
}

From source file:com.liferay.document.library.web.internal.portlet.action.GetFileActionHelper.java

License:Open Source License

protected void getFile(long fileEntryId, long folderId, String name, String title, String version,
        long fileShortcutId, String uuid, long groupId, String targetExtension, HttpServletRequest request,
        HttpServletResponse response) throws Exception {

    if (name.startsWith("DLFE-")) {
        name = name.substring(5);/*from   w  ww  .ja v  a2s.  c  om*/
    }

    name = FileUtil.stripExtension(name);

    FileEntry fileEntry = null;

    if (Validator.isNotNull(uuid) && (groupId > 0)) {
        fileEntry = DLAppServiceUtil.getFileEntryByUuidAndGroupId(uuid, groupId);

        folderId = fileEntry.getFolderId();
    }

    if (fileEntryId > 0) {
        fileEntry = DLAppServiceUtil.getFileEntry(fileEntryId);
    } else if (fileShortcutId <= 0) {
        if (Validator.isNotNull(title)) {
            fileEntry = DLAppServiceUtil.getFileEntry(groupId, folderId, title);
        } else if (Validator.isNotNull(name)) {
            DLFileEntry dlFileEntry = DLFileEntryLocalServiceUtil.fetchFileEntryByName(groupId, folderId, name);

            if (dlFileEntry == null) {

                // LPS-30374

                List<DLFileEntry> dlFileEntries = DLFileEntryLocalServiceUtil.getFileEntries(folderId, name);

                if (!dlFileEntries.isEmpty()) {
                    dlFileEntry = dlFileEntries.get(0);
                }
            }

            if (dlFileEntry != null) {
                ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

                PermissionChecker permissionChecker = themeDisplay.getPermissionChecker();

                DLFileEntryPermission.check(permissionChecker, dlFileEntry, ActionKeys.VIEW);

                fileEntry = new LiferayFileEntry(dlFileEntry);
            }
        }
    } else {
        FileShortcut fileShortcut = DLAppServiceUtil.getFileShortcut(fileShortcutId);

        fileEntryId = fileShortcut.getToFileEntryId();

        fileEntry = DLAppServiceUtil.getFileEntry(fileEntryId);
    }

    if (Validator.isNull(version)) {
        if ((fileEntry != null) && Validator.isNotNull(fileEntry.getVersion())) {

            version = fileEntry.getVersion();
        } else {
            throw new NoSuchFileEntryException("{fileEntryId=" + fileEntryId + "}");
        }
    }

    FileVersion fileVersion = fileEntry.getFileVersion(version);

    InputStream is = fileVersion.getContentStream(true);

    String fileName = fileVersion.getTitle();

    String sourceExtension = fileVersion.getExtension();

    if (Validator.isNotNull(sourceExtension) && !fileName.endsWith(StringPool.PERIOD + sourceExtension)) {

        fileName += StringPool.PERIOD + sourceExtension;
    }

    long contentLength = fileVersion.getSize();
    String contentType = fileVersion.getMimeType();

    if (Validator.isNotNull(targetExtension)) {
        String id = DLUtil.getTempFileId(fileEntry.getFileEntryId(), version);

        File convertedFile = DocumentConversionUtil.convert(id, is, sourceExtension, targetExtension);

        if (convertedFile != null) {
            fileName = FileUtil.stripExtension(fileName).concat(StringPool.PERIOD).concat(targetExtension);
            is = new FileInputStream(convertedFile);
            contentLength = convertedFile.length();
            contentType = MimeTypesUtil.getContentType(fileName);
        }
    }

    FlashMagicBytesUtil.Result flashMagicBytesUtilResult = FlashMagicBytesUtil.check(is);

    if (flashMagicBytesUtilResult.isFlash()) {
        fileName = FileUtil.stripExtension(fileName) + ".swf";
    }

    is = flashMagicBytesUtilResult.getInputStream();

    ServletResponseUtil.sendFile(request, response, fileName, is, contentLength, contentType);
}

From source file:com.liferay.document.library.web.internal.util.DLBreadcrumbUtil.java

License:Open Source License

public static void addPortletBreadcrumbEntries(FileShortcut fileShortcut, HttpServletRequest request,
        RenderResponse renderResponse) throws Exception {

    Folder folder = fileShortcut.getFolder();

    if (folder.getFolderId() != DLFolderConstants.DEFAULT_PARENT_FOLDER_ID) {

        addPortletBreadcrumbEntries(folder, request, renderResponse);
    }/*from  w  w w .ja v a  2 s. c om*/

    FileShortcut unescapedDLFileShortcut = fileShortcut.toUnescapedModel();

    PortletURL portletURL = renderResponse.createRenderURL();

    portletURL.setParameter("mvcRenderCommandName", "/document_library/view_file_entry");
    portletURL.setParameter("fileEntryId", String.valueOf(fileShortcut.getToFileEntryId()));

    PortalUtil.addPortletBreadcrumbEntry(request, unescapedDLFileShortcut.getToTitle(), portletURL.toString());
}