Interface DocumentFileService
public interface DocumentFileService
-
Method Summary
Modifier and TypeMethodDescriptionbooleanbooleancanAddDocument(String spaceId, String currentUserName) verify if current user can add documentcreateFolder(long ownerId, String folderId, String folderPath, String name, long authenticatedUserId) voidcreateShortcut(String documentId, String destPath, String aclIdentity, String conflictAction) Creates a shortcut for a documentvoiddeleteDocument(String documentPath, String documentId, boolean favorite, long delay, long authenticatedUserId) Delete a document.duplicateDocument(long ownerId, String fileId, String prefixClone, long authenticatedUserId) Duplicate the given node.org.exoplatform.services.security.IdentitygetAclUserIdentity(String userName) getBreadcrumb(long ownerId, String folderId, String folderPath, long authenticatedUserId) Retrieves breadcrumb of the given node.getDocumentItems(FileListingType listingType, DocumentNodeFilter filter, int offset, int limit, long userIdentityId, boolean showHiddenFiles) Retrieves a list of accessible folders and/or files, for a selected user, by applying the designated filter.getFilesTimeline(DocumentTimelineFilter filter, int offset, int limit, long userIdentityId) Retrieves a list of accessible files, for a selected user, by applying the designated filter.getFileVersions(String fileNodeId, String aclIdentity) Retrieves versions of specific filegetFolderChildNodes(DocumentFolderFilter filter, int offset, int limit, long userIdentityId) Retrieves a list of accessible files, for a selected user, by applying the designated filter.getFullTreeData(long ownerId, String folderId, long authenticatedUserId) Retrieves breadcrumb of the given node.getGroupDocumentsCount(DocumentTimelineFilter filter, long userIdentityId) Retrieves the number of existing files by group.getNewName(long ownerId, String folderId, String folderPath, String name) voidmoveDocument(long ownerId, String fileId, String destPath, long authenticatedUserId, String conflictAction) Move the given node.voidnotifyMember(String documentId, long destId) voidrenameDocument(long ownerId, String documentID, String name, long authenticatedUserId) restoreVersion(String versionId, String aclIdentity) restore document versionvoidshareDocument(String documentId, long destId) Shares a document with given user or spacevoidundoDeleteDocument(String documentId, long authenticatedUserId) Undo delete a document (Cancel the delete action).default voidupdateDocumentDescription(long ownerId, String documentID, String description, long aclIdentity) voidupdatePermissions(String documentId, NodePermission nodePermissionEntity, long authenticatedUserId) updateVersionSummary(String originFileId, String versionId, String summary, String aclIdentity) update or add a version summary
-
Method Details
-
getDocumentItems
List<AbstractNode> getDocumentItems(FileListingType listingType, DocumentNodeFilter filter, int offset, int limit, long userIdentityId, boolean showHiddenFiles) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException Retrieves a list of accessible folders and/or files, for a selected user, by applying the designated filter.- Parameters:
listingType-FileListingTypefilter-DocumentNodeFilterthat contains filtering criteriaoffset- Offset of the result listlimit- Limit of the result listuserIdentityId-Identitytechnical identifier of the user acessing files- Returns:
ListofAbstractNode- Throws:
IllegalAccessException- when the user isn't allowed to access documents of the designated parentFolderId or ownerIdorg.exoplatform.commons.exception.ObjectNotFoundException- when parentFolderId or ownerId doesn't exisits
-
getFilesTimeline
List<FileNode> getFilesTimeline(DocumentTimelineFilter filter, int offset, int limit, long userIdentityId) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException Retrieves a list of accessible files, for a selected user, by applying the designated filter. The returned results will be of typeFileNodeonly. The ownerId of filter object will be used to select the list of accessible Nodes to retrieve switch a timeline.- Parameters:
filter-DocumentTimelineFilterthat contains filtering criteriaoffset- Offset of the result listlimit- Limit of the result listuserIdentityId-Identitytechnical identifier of the user acessing files- Returns:
ListofAbstractNode- Throws:
IllegalAccessException- when the user isn't allowed to access documents of the designated ownerIdorg.exoplatform.commons.exception.ObjectNotFoundException- when ownerId doesn't exisits
-
getGroupDocumentsCount
DocumentGroupsSize getGroupDocumentsCount(DocumentTimelineFilter filter, long userIdentityId) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException Retrieves the number of existing files by group.- Parameters:
filter-DocumentTimelineFilterthat contains filtering criteriauserIdentityId-Identitytechnical identifier of the user acessing files- Returns:
ListofAbstractNode- Throws:
IllegalAccessException- when the user isn't allowed to access documents of the designated ownerIdorg.exoplatform.commons.exception.ObjectNotFoundException- when ownerId doesn't exisits
-
getFolderChildNodes
List<AbstractNode> getFolderChildNodes(DocumentFolderFilter filter, int offset, int limit, long userIdentityId) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException Retrieves a list of accessible files, for a selected user, by applying the designated filter. The parentForlderId of filter object will be used to select the list of Nodes to retrieve.- Parameters:
filter-DocumentFolderFilterthat contains filtering criteriaoffset- Offset of the result listlimit- Limit of the result listuserIdentityId-Identitytechnical identifier of the user acessing files- Returns:
ListofAbstractNode- Throws:
IllegalAccessException- when the user isn't allowed to access documents of the designated parentFolderIdorg.exoplatform.commons.exception.ObjectNotFoundException- when parentFolderId doesn't exisits
-
getBreadcrumb
List<BreadCrumbItem> getBreadcrumb(long ownerId, String folderId, String folderPath, long authenticatedUserId) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException Retrieves breadcrumb of the given node.- Parameters:
folderId- Id of the given folderauthenticatedUserId- of the user acessing files- Returns:
ListofBreadCrumbItem- Throws:
IllegalAccessException- when the user isn't allowed to access documents of the designated parentFolderIdorg.exoplatform.commons.exception.ObjectNotFoundException- when folderId doesn't exisits
-
getFullTreeData
List<FullTreeItem> getFullTreeData(long ownerId, String folderId, long authenticatedUserId) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException Retrieves breadcrumb of the given node.- Parameters:
folderId- Id of the given folderauthenticatedUserId- of the user acessing files- Returns:
ListofFullTreeItem- Throws:
IllegalAccessException- when the user isn't allowed to access documents of the designated parentFolderIdorg.exoplatform.commons.exception.ObjectNotFoundException- when folderId doesn't exisits
-
duplicateDocument
AbstractNode duplicateDocument(long ownerId, String fileId, String prefixClone, long authenticatedUserId) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException Duplicate the given node.- Parameters:
fileId- Id of the given fileauthenticatedUserId- of the user acessing files- Returns:
AbstractNode- Throws:
IllegalAccessException- when the user isn't allowed to access documents of the designated parentFolderIdorg.exoplatform.commons.exception.ObjectNotFoundException- when folderId doesn't exisits
-
moveDocument
void moveDocument(long ownerId, String fileId, String destPath, long authenticatedUserId, String conflictAction) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException, org.exoplatform.commons.ObjectAlreadyExistsException Move the given node.- Parameters:
fileId- Id of the given fileauthenticatedUserId- of the user accessing filesconflictAction- conflict action- Throws:
IllegalAccessException- when the user isn't allowed to access documents of the designated parentFolderIdorg.exoplatform.commons.exception.ObjectNotFoundException- when folderId doesn't existorg.exoplatform.commons.ObjectAlreadyExistsException- when file with same name already exists in the target path
-
deleteDocument
void deleteDocument(String documentPath, String documentId, boolean favorite, long delay, long authenticatedUserId) throws IllegalAccessException Delete a document.- Parameters:
documentPath- the path of documentdocumentId- the Id of documentfavorite- Is favorite documentdelay- the delay to apply the delete atcionauthenticatedUserId- of the user acessing files- Throws:
IllegalAccessException- when the user isn't allowed to delete document
-
undoDeleteDocument
Undo delete a document (Cancel the delete action).- Parameters:
documentId- the Id of documentauthenticatedUserId- of the user acessing files
-
updatePermissions
void updatePermissions(String documentId, NodePermission nodePermissionEntity, long authenticatedUserId) throws IllegalAccessException - Throws:
IllegalAccessException
-
notifyMember
- Throws:
IllegalAccessException
-
createFolder
AbstractNode createFolder(long ownerId, String folderId, String folderPath, String name, long authenticatedUserId) throws IllegalAccessException, org.exoplatform.commons.ObjectAlreadyExistsException, org.exoplatform.commons.exception.ObjectNotFoundException - Throws:
IllegalAccessExceptionorg.exoplatform.commons.ObjectAlreadyExistsExceptionorg.exoplatform.commons.exception.ObjectNotFoundException
-
getNewName
String getNewName(long ownerId, String folderId, String folderPath, String name) throws IllegalAccessException, org.exoplatform.commons.ObjectAlreadyExistsException, org.exoplatform.commons.exception.ObjectNotFoundException - Throws:
IllegalAccessExceptionorg.exoplatform.commons.ObjectAlreadyExistsExceptionorg.exoplatform.commons.exception.ObjectNotFoundException
-
renameDocument
void renameDocument(long ownerId, String documentID, String name, long authenticatedUserId) throws IllegalAccessException, org.exoplatform.commons.ObjectAlreadyExistsException, org.exoplatform.commons.exception.ObjectNotFoundException - Throws:
IllegalAccessExceptionorg.exoplatform.commons.ObjectAlreadyExistsExceptionorg.exoplatform.commons.exception.ObjectNotFoundException
-
canAccess
boolean canAccess(String documentID, org.exoplatform.services.security.Identity aclIdentity) throws javax.jcr.RepositoryException - Throws:
javax.jcr.RepositoryException
-
getAclUserIdentity
org.exoplatform.services.security.Identity getAclUserIdentity(String userName) throws IllegalAccessException - Throws:
IllegalAccessException
-
updateDocumentDescription
default void updateDocumentDescription(long ownerId, String documentID, String description, long aclIdentity) throws IllegalStateException, IllegalAccessException, javax.jcr.RepositoryException - Throws:
IllegalStateExceptionIllegalAccessExceptionjavax.jcr.RepositoryException
-
createShortcut
void createShortcut(String documentId, String destPath, String aclIdentity, String conflictAction) throws IllegalAccessException, org.exoplatform.commons.ObjectAlreadyExistsException Creates a shortcut for a document- Parameters:
documentId- document iddestPath- destination pathaclIdentity- user identity idconflictAction- conflictAction- Throws:
IllegalAccessExceptionorg.exoplatform.commons.ObjectAlreadyExistsException
-
getFileVersions
Retrieves versions of specific file- Parameters:
fileNodeId- target file node idaclIdentity- user identity id- Returns:
ListofFileVersion
-
updateVersionSummary
FileVersion updateVersionSummary(String originFileId, String versionId, String summary, String aclIdentity) update or add a version summary- Parameters:
originFileId- original file idversionId- version idsummary- new summary to be savedaclIdentity- current user identity- Returns:
FileVersion
-
restoreVersion
restore document version- Parameters:
versionId- version idaclIdentity- current user identity- Returns:
FileVersion
-
canAddDocument
verify if current user can add document- Parameters:
spaceId- space idcurrentUserName- current user name
-