List of usage examples for com.liferay.portal.repository.liferayrepository.model LiferayFileVersion LiferayFileVersion
public LiferayFileVersion(DLFileVersion dlFileVersion)
From source file:com.custom.portal.verify.CustomVerifyDocumentLibrary.java
License:Open Source License
protected void updateFileEntryAssets() throws Exception { List<DLFileEntry> dlFileEntries = DLFileEntryLocalServiceUtil.getNoAssetFileEntries(); if (_log.isDebugEnabled()) { _log.debug("Processing " + dlFileEntries.size() + " file entries with no asset"); }/*from w w w.jav a2 s . c o m*/ for (DLFileEntry dlFileEntry : dlFileEntries) { FileEntry fileEntry = new LiferayFileEntry(dlFileEntry); FileVersion fileVersion = new LiferayFileVersion(dlFileEntry.getFileVersion()); try { DLAppHelperLocalServiceUtil.updateAsset(dlFileEntry.getUserId(), fileEntry, fileVersion, null, null, null); } catch (Exception e) { if (_log.isWarnEnabled()) { _log.warn("Unable to update asset for file entry " + dlFileEntry.getFileEntryId() + ": " + e.getMessage()); } } } if (_log.isDebugEnabled()) { _log.debug("Assets verified for file entries"); } }
From source file:com.liferay.document.library.internal.verify.DLServiceVerifyProcess.java
License:Open Source License
protected void updateFileEntryAssets() throws Exception { try (LoggingTimer loggingTimer = new LoggingTimer()) { List<DLFileEntry> dlFileEntries = _dlFileEntryLocalService.getNoAssetFileEntries(); if (_log.isDebugEnabled()) { _log.debug("Processing " + dlFileEntries.size() + " file entries with no asset"); }/*from ww w . jav a 2 s . com*/ for (DLFileEntry dlFileEntry : dlFileEntries) { FileEntry fileEntry = new LiferayFileEntry(dlFileEntry); FileVersion fileVersion = new LiferayFileVersion(dlFileEntry.getFileVersion()); try { _dlAppHelperLocalService.updateAsset(dlFileEntry.getUserId(), fileEntry, fileVersion, null, null, null); } catch (Exception e) { if (_log.isWarnEnabled()) { _log.warn("Unable to update asset for file entry " + dlFileEntry.getFileEntryId() + ": " + e.getMessage()); } } } if (_log.isDebugEnabled()) { _log.debug("Assets verified for file entries"); } } }
From source file:com.liferay.portlet.documentlibrary.service.impl.DLFileEntryLocalServiceImpl.java
License:Open Source License
public DLFileEntry updateStatus(long userId, long fileVersionId, int status, Map<String, Serializable> workflowContext, ServiceContext serviceContext) throws PortalException, SystemException { // File version User user = userPersistence.findByPrimaryKey(userId); DLFileVersion dlFileVersion = dlFileVersionPersistence.findByPrimaryKey(fileVersionId); dlFileVersion.setStatus(status);// w w w.j a va 2s.co m dlFileVersion.setStatusByUserId(user.getUserId()); dlFileVersion.setStatusByUserName(user.getFullName()); dlFileVersion.setStatusDate(new Date()); dlFileVersionPersistence.update(dlFileVersion, false); // File entry DLFileEntry dlFileEntry = dlFileEntryPersistence.findByPrimaryKey(dlFileVersion.getFileEntryId()); if (status == WorkflowConstants.STATUS_APPROVED) { if (DLUtil.compareVersions(dlFileEntry.getVersion(), dlFileVersion.getVersion()) <= 0) { dlFileEntry.setExtension(dlFileVersion.getExtension()); dlFileEntry.setTitle(dlFileVersion.getTitle()); dlFileEntry.setDescription(dlFileVersion.getDescription()); dlFileEntry.setExtraSettings(dlFileVersion.getExtraSettings()); dlFileEntry.setFileEntryTypeId(dlFileVersion.getFileEntryTypeId()); dlFileEntry.setVersion(dlFileVersion.getVersion()); dlFileEntry.setVersionUserId(dlFileVersion.getUserId()); dlFileEntry.setVersionUserName(dlFileVersion.getUserName()); dlFileEntry.setModifiedDate(dlFileVersion.getCreateDate()); dlFileEntry.setSize(dlFileVersion.getSize()); dlFileEntryPersistence.update(dlFileEntry, false); } } else { // File entry if (dlFileEntry.getVersion().equals(dlFileVersion.getVersion())) { String newVersion = DLFileEntryConstants.VERSION_DEFAULT; List<DLFileVersion> approvedFileVersions = dlFileVersionPersistence .findByF_S(dlFileEntry.getFileEntryId(), WorkflowConstants.STATUS_APPROVED); if (!approvedFileVersions.isEmpty()) { newVersion = approvedFileVersions.get(0).getVersion(); } dlFileEntry.setVersion(newVersion); dlFileEntryPersistence.update(dlFileEntry, false); } // Indexer if (dlFileVersion.getVersion().equals(DLFileEntryConstants.VERSION_DEFAULT)) { Indexer indexer = IndexerRegistryUtil.getIndexer(DLFileEntry.class); indexer.delete(dlFileEntry); } } // App helper dlAppHelperLocalService.updateStatus(userId, new LiferayFileEntry(dlFileEntry), new LiferayFileVersion(dlFileVersion), status, workflowContext); // Indexer if (status == WorkflowConstants.STATUS_APPROVED) { reindex(dlFileEntry); } return dlFileEntry; }
From source file:com.liferay.portlet.documentlibrary.service.impl.DLFileEntryLocalServiceImpl.java
License:Open Source License
protected DLFileEntry updateFileEntry(long userId, long fileEntryId, String sourceFileName, String extension, String mimeType, String title, String description, String changeLog, boolean majorVersion, String extraSettings, long fileEntryTypeId, Map<String, Fields> fieldsMap, File file, InputStream is, long size, ServiceContext serviceContext) throws PortalException, SystemException { User user = userPersistence.findByPrimaryKey(userId); DLFileEntry dlFileEntry = dlFileEntryPersistence.findByPrimaryKey(fileEntryId); boolean checkedOut = dlFileEntry.isCheckedOut(); DLFileVersion dlFileVersion = dlFileVersionLocalService.getLatestFileVersion(fileEntryId, !checkedOut); boolean autoCheckIn = !checkedOut && dlFileVersion.isApproved(); if (autoCheckIn) { dlFileEntry = checkOutFileEntry(userId, fileEntryId); } else if (!checkedOut) { lockFileEntry(userId, fileEntryId); }/*from ww w. j a v a2 s . c o m*/ if (!hasFileEntryLock(userId, fileEntryId)) { lockFileEntry(userId, fileEntryId); } if (checkedOut || autoCheckIn) { dlFileVersion = dlFileVersionLocalService.getLatestFileVersion(fileEntryId, false); } try { if (Validator.isNull(extension)) { extension = dlFileEntry.getExtension(); } if (Validator.isNull(mimeType)) { mimeType = dlFileEntry.getMimeType(); } if (Validator.isNull(title)) { title = sourceFileName; if (Validator.isNull(title)) { title = dlFileEntry.getTitle(); } } Date now = new Date(); validateFile(dlFileEntry.getGroupId(), dlFileEntry.getFolderId(), dlFileEntry.getFileEntryId(), extension, title, sourceFileName, file, is); // File version String version = dlFileVersion.getVersion(); if (size == 0) { size = dlFileVersion.getSize(); } updateFileVersion(user, dlFileVersion, sourceFileName, extension, mimeType, title, description, changeLog, extraSettings, fileEntryTypeId, fieldsMap, version, size, dlFileVersion.getStatus(), serviceContext.getModifiedDate(now), serviceContext); // App helper dlAppHelperLocalService.updateAsset(userId, new LiferayFileEntry(dlFileEntry), new LiferayFileVersion(dlFileVersion), serviceContext.getAssetCategoryIds(), serviceContext.getAssetTagNames(), serviceContext.getAssetLinkEntryIds()); // File if ((file != null) || (is != null)) { try { DLStoreUtil.deleteFile(user.getCompanyId(), dlFileEntry.getDataRepositoryId(), dlFileEntry.getName(), version); } catch (NoSuchFileException nsfe) { } if (file != null) { DLStoreUtil.updateFile(user.getCompanyId(), dlFileEntry.getDataRepositoryId(), dlFileEntry.getName(), dlFileEntry.getExtension(), false, version, sourceFileName, file); } else { DLStoreUtil.updateFile(user.getCompanyId(), dlFileEntry.getDataRepositoryId(), dlFileEntry.getName(), dlFileEntry.getExtension(), false, version, sourceFileName, is); } } if (autoCheckIn) { checkInFileEntry(userId, fileEntryId, majorVersion, changeLog, serviceContext); } else if (serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_PUBLISH) { String syncEvent = DLSyncConstants.EVENT_UPDATE; if (dlFileVersion.getVersion().equals(DLFileEntryConstants.VERSION_DEFAULT)) { syncEvent = DLSyncConstants.EVENT_ADD; } startWorkflowInstance(userId, serviceContext, dlFileVersion, syncEvent); } } catch (PortalException pe) { if (autoCheckIn) { cancelCheckOut(userId, fileEntryId); } throw pe; } catch (SystemException se) { if (autoCheckIn) { cancelCheckOut(userId, fileEntryId); } throw se; } finally { if (!autoCheckIn && !checkedOut) { unlockFileEntry(fileEntryId); } } return dlFileEntryPersistence.findByPrimaryKey(fileEntryId); }
From source file:com.liferay.portlet.documentlibrary.util.DLProcessorRegistryImpl.java
License:Open Source License
public void trigger(FileEntry fileEntry) { if (!DLProcessorThreadLocal.isEnabled()) { return;//w w w . j av a2s . c om } if ((fileEntry == null) || (fileEntry.getSize() == 0)) { return; } FileVersion latestFileVersion = null; try { if (fileEntry.getModel() instanceof DLFileEntry) { DLFileEntry dlFileEntry = (DLFileEntry) fileEntry.getModel(); latestFileVersion = new LiferayFileVersion(dlFileEntry.getLatestFileVersion(false)); } else { latestFileVersion = fileEntry.getLatestFileVersion(); } } catch (Exception e) { _log.error(e, e); return; } for (String dlProcessorClassName : _DL_FILE_ENTRY_PROCESSORS) { DLProcessor dlProcessor = (DLProcessor) InstancePool.get(dlProcessorClassName); if (dlProcessor.isSupported(latestFileVersion)) { dlProcessor.trigger(latestFileVersion); } } for (DLProcessor dlProcessor : _dlProcessors) { if (dlProcessor.isSupported(latestFileVersion)) { dlProcessor.trigger(latestFileVersion); } } }