List of usage examples for com.liferay.portal.kernel.repository.model FileEntry getSize
public long getSize();
From source file:au.com.permeance.liferay.portlet.documentlibrary.service.impl.DLFolderUsageHelper.java
License:Open Source License
/** * Visit File Entry.// ww w .ja v a 2 s .c o m * * @param fileEntry file entry * @param folderPath folder path * @param folderUsageCollector folder usage collector * * @throws PortalException * @throws SystemException * @throws IOException */ public static void calculateFileEntryUsage(FileEntry fileEntry, String folderPath, DLFolderUsageCollector folderUsageCollector) throws PortalException, SystemException, IOException { if (s_log.isDebugEnabled()) { s_log.debug( "calculating usage for file entry " + fileEntry.getFileEntryId() + "/" + fileEntry.getTitle()); } try { long fileEntrySize = fileEntry.getSize(); folderUsageCollector.incrementFolderSize(fileEntrySize); } catch (Exception e) { String msg = "Error calculating usage for file entry " + fileEntry.getFileEntryId() + " : " + e.getMessage(); s_log.error(msg, e); if (e instanceof PortalException) { throw (PortalException) e; } else if (e instanceof SystemException) { throw (SystemException) e; } else if (e instanceof IOException) { throw (IOException) e; } } }
From source file:com.liferay.document.library.internal.exportimport.data.handler.FileEntryStagedModelDataHandler.java
License:Open Source License
@Override protected void doImportStagedModel(PortletDataContext portletDataContext, FileEntry fileEntry) throws Exception { long userId = portletDataContext.getUserId(fileEntry.getUserUuid()); if (!fileEntry.isDefaultRepository()) { // References has been automatically imported, nothing to do here return;/*from www . j a v a2s . com*/ } Map<Long, Long> folderIds = (Map<Long, Long>) portletDataContext.getNewPrimaryKeysMap(Folder.class); long folderId = MapUtil.getLong(folderIds, fileEntry.getFolderId(), fileEntry.getFolderId()); long[] assetCategoryIds = portletDataContext.getAssetCategoryIds(DLFileEntry.class, fileEntry.getFileEntryId()); String[] assetTagNames = portletDataContext.getAssetTagNames(DLFileEntry.class, fileEntry.getFileEntryId()); ServiceContext serviceContext = portletDataContext.createServiceContext(fileEntry, DLFileEntry.class); serviceContext.setAttribute("sourceFileName", "A." + fileEntry.getExtension()); serviceContext.setUserId(userId); Element fileEntryElement = portletDataContext.getImportDataElement(fileEntry); String binPath = fileEntryElement.attributeValue("bin-path"); InputStream is = null; try { if (Validator.isNull(binPath) && portletDataContext.isPerformDirectBinaryImport()) { try { is = FileEntryUtil.getContentStream(fileEntry); } catch (Exception e) { if (_log.isWarnEnabled()) { _log.warn("Unable to retrieve content for file entry " + fileEntry.getFileEntryId(), e); } return; } } else { is = portletDataContext.getZipEntryAsInputStream(binPath); } if (is == null) { if (_log.isWarnEnabled()) { _log.warn("No file found for file entry " + fileEntry.getFileEntryId()); } return; } importMetaData(portletDataContext, fileEntryElement, fileEntry, serviceContext); FileEntry importedFileEntry = null; if (portletDataContext.isDataStrategyMirror()) { FileEntry existingFileEntry = fetchStagedModelByUuidAndGroupId(fileEntry.getUuid(), portletDataContext.getScopeGroupId()); FileVersion fileVersion = fileEntry.getFileVersion(); if (existingFileEntry == null) { if (portletDataContext.isDataStrategyMirrorWithOverwriting()) { FileEntry existingTitleFileEntry = FileEntryUtil .fetchByR_F_T(portletDataContext.getScopeGroupId(), folderId, fileEntry.getTitle()); if (existingTitleFileEntry == null) { existingTitleFileEntry = FileEntryUtil.fetchByR_F_FN( portletDataContext.getScopeGroupId(), folderId, fileEntry.getFileName()); } if (existingTitleFileEntry != null) { _dlAppLocalService.deleteFileEntry(existingTitleFileEntry.getFileEntryId()); } } serviceContext.setAttribute("fileVersionUuid", fileVersion.getUuid()); serviceContext.setUuid(fileEntry.getUuid()); String fileEntryTitle = _dlFileEntryLocalService.getUniqueTitle( portletDataContext.getScopeGroupId(), folderId, 0, fileEntry.getTitle(), fileEntry.getExtension()); importedFileEntry = _dlAppLocalService.addFileEntry(userId, portletDataContext.getScopeGroupId(), folderId, fileEntry.getFileName(), fileEntry.getMimeType(), fileEntryTitle, fileEntry.getDescription(), null, is, fileEntry.getSize(), serviceContext); if (fileEntry.isInTrash()) { importedFileEntry = _dlTrashService .moveFileEntryToTrash(importedFileEntry.getFileEntryId()); } } else { FileVersion latestExistingFileVersion = existingFileEntry.getLatestFileVersion(true); boolean indexEnabled = serviceContext.isIndexingEnabled(); boolean deleteFileEntry = false; boolean updateFileEntry = false; if (!Objects.equals(fileVersion.getUuid(), latestExistingFileVersion.getUuid())) { deleteFileEntry = true; updateFileEntry = true; } else { InputStream existingFileVersionInputStream = null; try { existingFileVersionInputStream = latestExistingFileVersion.getContentStream(false); } catch (Exception e) { if (_log.isDebugEnabled()) { _log.debug(e, e); } } finally { if (existingFileVersionInputStream != null) { existingFileVersionInputStream.close(); } } if (existingFileVersionInputStream == null) { updateFileEntry = true; } } try { serviceContext.setIndexingEnabled(false); if (updateFileEntry) { DLFileVersion alreadyExistingFileVersion = _dlFileVersionLocalService .getFileVersionByUuidAndGroupId(fileVersion.getUuid(), existingFileEntry.getGroupId()); if (alreadyExistingFileVersion != null) { serviceContext.setAttribute("existingDLFileVersionId", alreadyExistingFileVersion.getFileVersionId()); } serviceContext.setUuid(fileVersion.getUuid()); String fileEntryTitle = _dlFileEntryLocalService.getUniqueTitle( portletDataContext.getScopeGroupId(), existingFileEntry.getFolderId(), existingFileEntry.getFileEntryId(), fileEntry.getTitle(), fileEntry.getExtension()); importedFileEntry = _dlAppLocalService.updateFileEntry(userId, existingFileEntry.getFileEntryId(), fileEntry.getFileName(), fileEntry.getMimeType(), fileEntryTitle, fileEntry.getDescription(), null, false, is, fileEntry.getSize(), serviceContext); } else { _dlAppLocalService.updateAsset(userId, existingFileEntry, latestExistingFileVersion, assetCategoryIds, assetTagNames, null); importedFileEntry = existingFileEntry; } if (importedFileEntry.getFolderId() != folderId) { importedFileEntry = _dlAppLocalService.moveFileEntry(userId, importedFileEntry.getFileEntryId(), folderId, serviceContext); } if (importedFileEntry instanceof LiferayFileEntry) { LiferayFileEntry liferayFileEntry = (LiferayFileEntry) importedFileEntry; Indexer<DLFileEntry> indexer = IndexerRegistryUtil .nullSafeGetIndexer(DLFileEntry.class); indexer.reindex((DLFileEntry) liferayFileEntry.getModel()); } if (deleteFileEntry && ExportImportThreadLocal.isStagingInProcess()) { _dlAppService.deleteFileVersion(latestExistingFileVersion.getFileEntryId(), latestExistingFileVersion.getVersion()); } } finally { serviceContext.setIndexingEnabled(indexEnabled); } } } else { String fileEntryTitle = _dlFileEntryLocalService.getUniqueTitle( portletDataContext.getScopeGroupId(), folderId, 0, fileEntry.getTitle(), fileEntry.getExtension()); importedFileEntry = _dlAppLocalService.addFileEntry(userId, portletDataContext.getScopeGroupId(), folderId, fileEntry.getFileName(), fileEntry.getMimeType(), fileEntryTitle, fileEntry.getDescription(), null, is, fileEntry.getSize(), serviceContext); } for (DLPluggableContentDataHandler dlPluggableContentDataHandler : _serviceTrackerList) { dlPluggableContentDataHandler.importContent(portletDataContext, fileEntryElement, fileEntry, importedFileEntry); } portletDataContext.importClassedModel(fileEntry, importedFileEntry, DLFileEntry.class); Map<Long, Long> fileEntryIds = (Map<Long, Long>) portletDataContext .getNewPrimaryKeysMap(FileEntry.class); fileEntryIds.put(fileEntry.getFileEntryId(), importedFileEntry.getFileEntryId()); } finally { try { is.close(); } catch (IOException ioe) { _log.error(ioe, ioe); } } }
From source file:com.liferay.document.library.internal.exportimport.data.handler.test.FileEntryStagedModelDataHandlerTest.java
License:Open Source License
@Override protected void validateImportedStagedModel(StagedModel stagedModel, StagedModel importedStagedModel) throws Exception { Assert.assertTrue(/*from w w w .j a v a 2s.c o m*/ String.valueOf(stagedModel.getCreateDate()) + StringPool.SPACE + importedStagedModel.getCreateDate(), DateUtil.equals(stagedModel.getCreateDate(), importedStagedModel.getCreateDate())); Assert.assertEquals(stagedModel.getUuid(), importedStagedModel.getUuid()); FileEntry fileEntry = (FileEntry) stagedModel; FileEntry importedFileEntry = (FileEntry) importedStagedModel; Assert.assertEquals(fileEntry.getFileName(), importedFileEntry.getFileName()); Assert.assertEquals(fileEntry.getExtension(), importedFileEntry.getExtension()); Assert.assertEquals(fileEntry.getMimeType(), importedFileEntry.getMimeType()); Assert.assertEquals(fileEntry.getTitle(), importedFileEntry.getTitle()); Assert.assertEquals(fileEntry.getDescription(), importedFileEntry.getDescription()); Assert.assertEquals(fileEntry.getSize(), importedFileEntry.getSize()); FileVersion latestFileVersion = fileEntry.getLatestFileVersion(); FileVersion importedLatestFileVersion = importedFileEntry.getLatestFileVersion(); Assert.assertEquals(latestFileVersion.getUuid(), importedLatestFileVersion.getUuid()); Assert.assertEquals(latestFileVersion.getFileName(), importedLatestFileVersion.getFileName()); Assert.assertEquals(latestFileVersion.getExtension(), importedLatestFileVersion.getExtension()); Assert.assertEquals(latestFileVersion.getMimeType(), importedLatestFileVersion.getMimeType()); Assert.assertEquals(latestFileVersion.getTitle(), importedLatestFileVersion.getTitle()); Assert.assertEquals(latestFileVersion.getDescription(), importedLatestFileVersion.getDescription()); Assert.assertEquals(latestFileVersion.getSize(), importedLatestFileVersion.getSize()); Assert.assertEquals(latestFileVersion.getStatus(), importedLatestFileVersion.getStatus()); }
From source file:com.liferay.document.library.internal.util.DLProcessorRegistryImpl.java
License:Open Source License
@Override public void exportGeneratedFiles(PortletDataContext portletDataContext, FileEntry fileEntry, Element fileEntryElement) throws Exception { if ((fileEntry == null) || (fileEntry.getSize() == 0)) { return;//from w ww . ja v a2s .c o m } FileVersion latestFileVersion = _getLatestFileVersion(fileEntry, true); if (latestFileVersion == null) { return; } Iterable<String> dlProcessorTypes = _dlProcessorServiceTrackerMap.keySet(); for (String dlProcessorType : dlProcessorTypes) { DLProcessor dlProcessor = _dlProcessorServiceTrackerMap.getService(dlProcessorType); if (dlProcessor.isSupported(latestFileVersion)) { dlProcessor.exportGeneratedFiles(portletDataContext, fileEntry, fileEntryElement); } } }
From source file:com.liferay.document.library.internal.util.DLProcessorRegistryImpl.java
License:Open Source License
@Override public void importGeneratedFiles(PortletDataContext portletDataContext, FileEntry fileEntry, FileEntry importedFileEntry, Element fileEntryElement) throws Exception { if ((importedFileEntry == null) || (importedFileEntry.getSize() == 0)) { return;//from w ww.j a va 2s .co m } FileVersion fileVersion = importedFileEntry.getFileVersion(); if (fileVersion == null) { return; } Iterable<String> dlProcessorTypes = _dlProcessorServiceTrackerMap.keySet(); for (String dlProcessorType : dlProcessorTypes) { DLProcessor dlProcessor = _dlProcessorServiceTrackerMap.getService(dlProcessorType); if (dlProcessor.isSupported(fileVersion)) { dlProcessor.importGeneratedFiles(portletDataContext, fileEntry, importedFileEntry, fileEntryElement); } } }
From source file:com.liferay.document.library.internal.util.DLProcessorRegistryImpl.java
License:Open Source License
@Override public void trigger(FileEntry fileEntry, FileVersion fileVersion, boolean trusted) { if (!DLProcessorThreadLocal.isEnabled()) { return;//w ww . j av a 2s. com } if ((fileEntry == null) || (fileEntry.getSize() == 0)) { return; } FileVersion latestFileVersion = _getLatestFileVersion(fileEntry, trusted); if (latestFileVersion == null) { return; } Iterable<String> dlProcessorTypes = _dlProcessorServiceTrackerMap.keySet(); for (String dlProcessorType : dlProcessorTypes) { DLProcessor dlProcessor = _dlProcessorServiceTrackerMap.getService(dlProcessorType); if (dlProcessor.isSupported(latestFileVersion)) { dlProcessor.trigger(fileVersion, latestFileVersion); } } }
From source file:com.liferay.document.library.jaxrs.FileRepr.java
License:Open Source License
public static FileRepr fromFileEntry(FileEntry fileEntry, UriBuilder uriBuilder) { return new FileRepr(fileEntry.getFileEntryId(), fileEntry.getDescription(), fileEntry.getFileName(), fileEntry.getTitle(), fileEntry.getSize(), uriBuilder.build(fileEntry.getFileEntryId()).toString(), uriBuilder.path("content").build(fileEntry.getUuid()).toString()); }
From source file:com.liferay.document.library.service.test.DLFileVersionUpdateTest.java
License:Open Source License
protected void testVersionUpdate(String addFileName, byte[] addBytes, String addMimeType, String updateFileName, byte[] updateBytes, String updateMimeType) throws PortalException { String description = StringPool.BLANK; String changeLog = StringPool.BLANK; ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext(group.getGroupId()); FileEntry fileEntry = DLAppServiceUtil.addFileEntry(group.getGroupId(), parentFolder.getFolderId(), addFileName, addMimeType, addFileName, description, changeLog, addBytes, serviceContext); fileEntry = DLAppServiceUtil.updateFileEntry(fileEntry.getFileEntryId(), updateFileName, updateMimeType, updateFileName, description, changeLog, false, updateBytes, serviceContext); FileVersion fileVersion = fileEntry.getFileVersion(); Assert.assertEquals(DLFileEntryConstants.VERSION_DEFAULT, fileVersion.getVersion()); Assert.assertEquals(updateMimeType, fileVersion.getMimeType()); Assert.assertEquals(updateBytes.length, fileVersion.getSize()); Assert.assertEquals(fileVersion.getExtension(), fileEntry.getExtension()); Assert.assertEquals(fileVersion.getMimeType(), fileEntry.getMimeType()); Assert.assertEquals(fileVersion.getSize(), fileEntry.getSize()); }
From source file:com.liferay.document.library.web.internal.portlet.action.EditFileEntryMVCActionCommand.java
License:Open Source License
protected void addMultipleFileEntries(PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse, String selectedFileName, List<KeyValuePair> validFileNameKVPs, List<KeyValuePair> invalidFileNameKVPs) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); long repositoryId = ParamUtil.getLong(actionRequest, "repositoryId"); long folderId = ParamUtil.getLong(actionRequest, "folderId"); String description = ParamUtil.getString(actionRequest, "description"); String changeLog = ParamUtil.getString(actionRequest, "changeLog"); FileEntry tempFileEntry = null; try {/*from w w w . j av a 2 s. c o m*/ tempFileEntry = TempFileEntryUtil.getTempFileEntry(themeDisplay.getScopeGroupId(), themeDisplay.getUserId(), TEMP_FOLDER_NAME, selectedFileName); String originalSelectedFileName = TempFileEntryUtil .getOriginalTempFileName(tempFileEntry.getFileName()); String uniqueFileName = DLUtil.getUniqueFileName(tempFileEntry.getGroupId(), folderId, originalSelectedFileName); String mimeType = tempFileEntry.getMimeType(); InputStream inputStream = tempFileEntry.getContentStream(); long size = tempFileEntry.getSize(); ServiceContext serviceContext = ServiceContextFactory.getInstance(DLFileEntry.class.getName(), actionRequest); _dlAppService.addFileEntry(repositoryId, folderId, uniqueFileName, mimeType, uniqueFileName, description, changeLog, inputStream, size, serviceContext); validFileNameKVPs.add(new KeyValuePair(uniqueFileName, selectedFileName)); return; } catch (Exception e) { String errorMessage = getAddMultipleFileEntriesErrorMessage(portletConfig, actionRequest, actionResponse, e); invalidFileNameKVPs.add(new KeyValuePair(selectedFileName, errorMessage)); } finally { if (tempFileEntry != null) { TempFileEntryUtil.deleteTempFileEntry(tempFileEntry.getFileEntryId()); } } }
From source file:com.liferay.dynamic.data.mapping.util.DocumentLibraryDDMFormFieldValueTransformer.java
License:Open Source License
protected FileEntry addFileEntry(FileEntry tempFileEntry) throws PortalException { String fileName = DLUtil.getUniqueFileName(tempFileEntry.getGroupId(), tempFileEntry.getFolderId(), tempFileEntry.getFileName()); return DLAppServiceUtil.addFileEntry(tempFileEntry.getGroupId(), 0, fileName, tempFileEntry.getMimeType(), fileName, StringPool.BLANK, StringPool.BLANK, tempFileEntry.getContentStream(), tempFileEntry.getSize(), new ServiceContext()); }