List of usage examples for com.liferay.portal.repository.liferayrepository.model LiferayFileEntry LiferayFileEntry
public LiferayFileEntry(DLFileEntry dlFileEntry)
From source file:com.liferay.portlet.documentlibrary.service.impl.DLFileEntryLocalServiceImpl.java
License:Open Source License
public void deleteFileEntries(long groupId, long folderId) throws PortalException, SystemException { int count = dlFileEntryPersistence.countByG_F(groupId, folderId); int pages = count / _DELETE_INTERVAL; for (int i = 0; i <= pages; i++) { int start = (i * _DELETE_INTERVAL); int end = start + _DELETE_INTERVAL; List<DLFileEntry> dlFileEntries = dlFileEntryPersistence.findByG_F(groupId, folderId, start, end); for (DLFileEntry dlFileEntry : dlFileEntries) { dlAppHelperLocalService.deleteFileEntry(new LiferayFileEntry(dlFileEntry)); deleteFileEntry(dlFileEntry); }/* ww w . j av a 2 s . co m*/ } }
From source file:com.liferay.portlet.documentlibrary.service.impl.DLFileEntryLocalServiceImpl.java
License:Open Source License
public File getFile(long userId, long fileEntryId, String version, boolean incrementCounter) throws PortalException, SystemException { DLFileEntry dlFileEntry = dlFileEntryPersistence.findByPrimaryKey(fileEntryId); if (PropsValues.DL_FILE_ENTRY_READ_COUNT_ENABLED && incrementCounter) { dlFileEntry.setReadCount(dlFileEntry.getReadCount() + 1); dlFileEntryPersistence.update(dlFileEntry, false); }//w w w .ja va 2 s . co m dlAppHelperLocalService.getFileAsStream(userId, new LiferayFileEntry(dlFileEntry), incrementCounter); return DLStoreUtil.getFile(dlFileEntry.getCompanyId(), dlFileEntry.getDataRepositoryId(), dlFileEntry.getName(), version); }
From source file:com.liferay.portlet.documentlibrary.service.impl.DLFileEntryLocalServiceImpl.java
License:Open Source License
public InputStream getFileAsStream(long userId, long fileEntryId, String version, boolean incrementCounter) throws PortalException, SystemException { DLFileEntry dlFileEntry = dlFileEntryPersistence.findByPrimaryKey(fileEntryId); if (PropsValues.DL_FILE_ENTRY_READ_COUNT_ENABLED && incrementCounter) { dlFileEntry.setReadCount(dlFileEntry.getReadCount() + 1); dlFileEntryPersistence.update(dlFileEntry, false); }/* w ww. ja va2s . c o m*/ dlAppHelperLocalService.getFileAsStream(userId, new LiferayFileEntry(dlFileEntry), incrementCounter); return DLStoreUtil.getFileAsStream(dlFileEntry.getCompanyId(), dlFileEntry.getDataRepositoryId(), dlFileEntry.getName(), version); }
From source file:com.liferay.portlet.documentlibrary.service.impl.DLFileEntryLocalServiceImpl.java
License:Open Source License
public DLFileEntry moveFileEntry(long userId, long fileEntryId, long newFolderId, ServiceContext serviceContext) throws PortalException, SystemException { if (!hasFileEntryLock(userId, fileEntryId)) { lockFileEntry(userId, fileEntryId); }// w ww .ja v a 2s. c o m try { DLFileEntry dlFileEntry = moveFileEntryImpl(userId, fileEntryId, newFolderId, serviceContext); dlAppHelperLocalService.moveFileEntry(new LiferayFileEntry(dlFileEntry)); return dlFileEntryTypeLocalService.updateFileEntryFileEntryType(dlFileEntry, serviceContext); } finally { if (!isFileEntryCheckedOut(fileEntryId)) { unlockFileEntry(fileEntryId); } } }
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 ww .j av a 2s .c o 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 w ww . j a v a 2 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); }