@Override public ExtRepositoryFolderAdapter updateFolder( long folderId, String name, String description, ServiceContext serviceContext) throws PortalException { String extRepositoryFolderKey = getExtRepositoryObjectKey(folderId); ExtRepositoryFolder extRepositoryFolder = _extRepository.getExtRepositoryObject( ExtRepositoryObjectType.FOLDER, extRepositoryFolderKey); ExtRepositoryFolder parentExtRepositoryFolder = _extRepository.getExtRepositoryParentFolder(extRepositoryFolder); ExtRepositoryFolder newExtRepositoryFolder = _extRepository.moveExtRepositoryObject( ExtRepositoryObjectType.FOLDER, extRepositoryFolderKey, parentExtRepositoryFolder.getExtRepositoryModelKey(), name); ExtRepositoryAdapterCache extRepositoryAdapterCache = ExtRepositoryAdapterCache.getInstance(); extRepositoryAdapterCache.remove(extRepositoryFolderKey); return _toExtRepositoryObjectAdapter( ExtRepositoryObjectAdapterType.FOLDER, newExtRepositoryFolder); }
@Override public FileEntry updateFileEntry( long userId, long fileEntryId, String sourceFileName, String mimeType, String title, String description, String changeLog, boolean majorVersion, InputStream inputStream, long size, ServiceContext serviceContext) throws PortalException { String extRepositoryFileEntryKey = getExtRepositoryObjectKey(fileEntryId); ExtRepositoryFileEntry extRepositoryFileEntry = _extRepository.getExtRepositoryObject( ExtRepositoryObjectType.FILE, extRepositoryFileEntryKey); boolean needsCheckIn = false; if (!isCheckedOut(extRepositoryFileEntry)) { _extRepository.checkOutExtRepositoryFileEntry(extRepositoryFileEntryKey); needsCheckIn = true; } if (inputStream != null) { extRepositoryFileEntry = _extRepository.updateExtRepositoryFileEntry( extRepositoryFileEntryKey, mimeType, inputStream); } if (!title.equals(extRepositoryFileEntry.getTitle())) { ExtRepositoryFolder folder = _extRepository.getExtRepositoryParentFolder(extRepositoryFileEntry); extRepositoryFileEntry = _extRepository.moveExtRepositoryObject( ExtRepositoryObjectType.FILE, extRepositoryFileEntryKey, folder.getExtRepositoryModelKey(), title); ExtRepositoryAdapterCache extRepositoryAdapterCache = ExtRepositoryAdapterCache.getInstance(); extRepositoryAdapterCache.remove(extRepositoryFileEntryKey); } if (needsCheckIn) { _extRepository.checkInExtRepositoryFileEntry( extRepositoryFileEntryKey, majorVersion, changeLog); } return _toExtRepositoryObjectAdapter( ExtRepositoryObjectAdapterType.FILE, extRepositoryFileEntry); }