Class JCRDocumentFileStorage

java.lang.Object
org.exoplatform.documents.storage.jcr.JCRDocumentFileStorage
All Implemented Interfaces:
org.exoplatform.documents.storage.DocumentFileStorage

public class JCRDocumentFileStorage extends Object implements org.exoplatform.documents.storage.DocumentFileStorage
  • Constructor Summary

    Constructors
    Constructor
    Description
    JCRDocumentFileStorage(org.exoplatform.services.jcr.ext.hierarchy.NodeHierarchyCreator nodeHierarchyCreator, org.exoplatform.services.jcr.RepositoryService repositoryService, DocumentSearchServiceConnector documentSearchServiceConnector, org.exoplatform.social.core.manager.IdentityManager identityManager, org.exoplatform.social.core.space.spi.SpaceService spaceService, org.exoplatform.services.listener.ListenerService listenerService, org.exoplatform.services.security.IdentityRegistry identityRegistry, org.exoplatform.social.core.manager.ActivityManager activityManager)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    canAccess(String documentID, org.exoplatform.services.security.Identity aclIdentity)
     
    countNodeAccessList(javax.jcr.Node node, org.exoplatform.services.security.Identity aclIdentity)
     
    org.exoplatform.documents.model.AbstractNode
    createFolder(long ownerId, String folderId, String folderPath, String title, org.exoplatform.services.security.Identity aclIdentity)
     
    void
    createShortcut(String documentId, String destPath, String aclIdentity, String conflictAction)
     
    org.exoplatform.documents.model.AbstractNode
    duplicateDocument(long ownerId, String fileId, String prefixClone, org.exoplatform.services.security.Identity aclIdentity)
     
    List<org.exoplatform.documents.model.BreadCrumbItem>
    getBreadcrumb(long ownerId, String folderId, String folderPath, org.exoplatform.services.security.Identity aclIdentity)
     
    List<org.exoplatform.documents.model.FileNode>
    getFilesTimeline(org.exoplatform.documents.model.DocumentTimelineFilter filter, org.exoplatform.services.security.Identity aclIdentity, int offset, int limit)
     
    List<org.exoplatform.documents.model.FileVersion>
    getFileVersions(String fileNodeId, String aclIdentity)
    List<org.exoplatform.documents.model.AbstractNode>
    getFolderChildNodes(org.exoplatform.documents.model.DocumentFolderFilter filter, org.exoplatform.services.security.Identity aclIdentity, int offset, int limit)
     
    List<org.exoplatform.documents.model.FullTreeItem>
    getFullTreeData(long ownerId, String folderId, org.exoplatform.services.security.Identity aclIdentity)
     
    org.exoplatform.documents.model.DocumentGroupsSize
    getGroupDocumentsCount(org.exoplatform.documents.model.DocumentTimelineFilter filter, org.exoplatform.services.security.Identity aclIdentity)
     
    getNewName(long ownerId, String folderId, String folderPath, String title)
     
    boolean
    isDocumentSharedWithSamePermissions(javax.jcr.Node currentNode, javax.jcr.Node linkNode, org.exoplatform.social.core.identity.model.Identity destinationIdentity)
     
    void
    moveDocument(long ownerId, String fileId, String destPath, org.exoplatform.services.security.Identity aclIdentity, String conflictAction)
     
    void
    notifyMember(String documentId, long destId)
     
    void
    renameDocument(long ownerId, String documentID, String title, org.exoplatform.services.security.Identity aclIdentity)
     
    org.exoplatform.documents.model.FileVersion
    restoreVersion(String versionId, String aclIdentity)
    void
    shareDocument(String documentId, long destId, boolean notifyMember)
     
    void
    unShareDocument(String documentId, long destId)
     
    void
    updateDocumentDescription(long ownerId, String documentId, String description, org.exoplatform.services.security.Identity aclIdentity)
     
    void
    updatePermissions(String documentID, org.exoplatform.documents.model.NodePermission nodePermissionEntity, org.exoplatform.services.security.Identity aclIdentity)
     
    org.exoplatform.documents.model.FileVersion
    updateVersionSummary(String originFileId, String versionId, String summary, String aclIdentity)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • JCRDocumentFileStorage

      public JCRDocumentFileStorage(org.exoplatform.services.jcr.ext.hierarchy.NodeHierarchyCreator nodeHierarchyCreator, org.exoplatform.services.jcr.RepositoryService repositoryService, DocumentSearchServiceConnector documentSearchServiceConnector, org.exoplatform.social.core.manager.IdentityManager identityManager, org.exoplatform.social.core.space.spi.SpaceService spaceService, org.exoplatform.services.listener.ListenerService listenerService, org.exoplatform.services.security.IdentityRegistry identityRegistry, org.exoplatform.social.core.manager.ActivityManager activityManager)
  • Method Details

    • getFilesTimeline

      public List<org.exoplatform.documents.model.FileNode> getFilesTimeline(org.exoplatform.documents.model.DocumentTimelineFilter filter, org.exoplatform.services.security.Identity aclIdentity, int offset, int limit) throws org.exoplatform.commons.exception.ObjectNotFoundException
      Specified by:
      getFilesTimeline in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
    • getGroupDocumentsCount

      public org.exoplatform.documents.model.DocumentGroupsSize getGroupDocumentsCount(org.exoplatform.documents.model.DocumentTimelineFilter filter, org.exoplatform.services.security.Identity aclIdentity) throws org.exoplatform.commons.exception.ObjectNotFoundException
      Specified by:
      getGroupDocumentsCount in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
    • getFolderChildNodes

      public List<org.exoplatform.documents.model.AbstractNode> getFolderChildNodes(org.exoplatform.documents.model.DocumentFolderFilter filter, org.exoplatform.services.security.Identity aclIdentity, int offset, int limit) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException
      Specified by:
      getFolderChildNodes in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      IllegalAccessException
      org.exoplatform.commons.exception.ObjectNotFoundException
    • getBreadcrumb

      public List<org.exoplatform.documents.model.BreadCrumbItem> getBreadcrumb(long ownerId, String folderId, String folderPath, org.exoplatform.services.security.Identity aclIdentity) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException
      Specified by:
      getBreadcrumb in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      IllegalAccessException
      org.exoplatform.commons.exception.ObjectNotFoundException
    • getFullTreeData

      public List<org.exoplatform.documents.model.FullTreeItem> getFullTreeData(long ownerId, String folderId, org.exoplatform.services.security.Identity aclIdentity)
      Specified by:
      getFullTreeData in interface org.exoplatform.documents.storage.DocumentFileStorage
    • createFolder

      public org.exoplatform.documents.model.AbstractNode createFolder(long ownerId, String folderId, String folderPath, String title, org.exoplatform.services.security.Identity aclIdentity) throws org.exoplatform.commons.ObjectAlreadyExistsException, IllegalAccessException
      Specified by:
      createFolder in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      org.exoplatform.commons.ObjectAlreadyExistsException
      IllegalAccessException
    • getNewName

      public String getNewName(long ownerId, String folderId, String folderPath, String title) throws IllegalAccessException, org.exoplatform.commons.ObjectAlreadyExistsException, org.exoplatform.commons.exception.ObjectNotFoundException
      Specified by:
      getNewName in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      IllegalAccessException
      org.exoplatform.commons.ObjectAlreadyExistsException
      org.exoplatform.commons.exception.ObjectNotFoundException
    • renameDocument

      public void renameDocument(long ownerId, String documentID, String title, org.exoplatform.services.security.Identity aclIdentity) throws org.exoplatform.commons.ObjectAlreadyExistsException
      Specified by:
      renameDocument in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      org.exoplatform.commons.ObjectAlreadyExistsException
    • duplicateDocument

      public org.exoplatform.documents.model.AbstractNode duplicateDocument(long ownerId, String fileId, String prefixClone, org.exoplatform.services.security.Identity aclIdentity) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException
      Specified by:
      duplicateDocument in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      IllegalAccessException
      org.exoplatform.commons.exception.ObjectNotFoundException
    • moveDocument

      public void moveDocument(long ownerId, String fileId, String destPath, org.exoplatform.services.security.Identity aclIdentity, String conflictAction) throws org.exoplatform.commons.ObjectAlreadyExistsException
      Specified by:
      moveDocument in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      org.exoplatform.commons.ObjectAlreadyExistsException
    • updatePermissions

      public void updatePermissions(String documentID, org.exoplatform.documents.model.NodePermission nodePermissionEntity, org.exoplatform.services.security.Identity aclIdentity)
      Specified by:
      updatePermissions in interface org.exoplatform.documents.storage.DocumentFileStorage
    • shareDocument

      public void shareDocument(String documentId, long destId, boolean notifyMember)
      Specified by:
      shareDocument in interface org.exoplatform.documents.storage.DocumentFileStorage
    • isDocumentSharedWithSamePermissions

      public boolean isDocumentSharedWithSamePermissions(javax.jcr.Node currentNode, javax.jcr.Node linkNode, org.exoplatform.social.core.identity.model.Identity destinationIdentity) throws javax.jcr.RepositoryException
      Throws:
      javax.jcr.RepositoryException
    • notifyMember

      public void notifyMember(String documentId, long destId)
      Specified by:
      notifyMember in interface org.exoplatform.documents.storage.DocumentFileStorage
    • canAccess

      public boolean canAccess(String documentID, org.exoplatform.services.security.Identity aclIdentity) throws javax.jcr.RepositoryException
      Specified by:
      canAccess in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      javax.jcr.RepositoryException
    • updateDocumentDescription

      public void updateDocumentDescription(long ownerId, String documentId, String description, org.exoplatform.services.security.Identity aclIdentity) throws javax.jcr.RepositoryException
      Specified by:
      updateDocumentDescription in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      javax.jcr.RepositoryException
    • createShortcut

      public void createShortcut(String documentId, String destPath, String aclIdentity, String conflictAction) throws IllegalAccessException, org.exoplatform.commons.ObjectAlreadyExistsException
      Specified by:
      createShortcut in interface org.exoplatform.documents.storage.DocumentFileStorage
      Throws:
      IllegalAccessException
      org.exoplatform.commons.ObjectAlreadyExistsException
    • getFileVersions

      public List<org.exoplatform.documents.model.FileVersion> getFileVersions(String fileNodeId, String aclIdentity)
      Specified by:
      getFileVersions in interface org.exoplatform.documents.storage.DocumentFileStorage
    • updateVersionSummary

      public org.exoplatform.documents.model.FileVersion updateVersionSummary(String originFileId, String versionId, String summary, String aclIdentity)
      Specified by:
      updateVersionSummary in interface org.exoplatform.documents.storage.DocumentFileStorage
    • restoreVersion

      public org.exoplatform.documents.model.FileVersion restoreVersion(String versionId, String aclIdentity)
      Specified by:
      restoreVersion in interface org.exoplatform.documents.storage.DocumentFileStorage
      Returns:
    • countNodeAccessList

      public Map<String,Boolean> countNodeAccessList(javax.jcr.Node node, org.exoplatform.services.security.Identity aclIdentity) throws javax.jcr.RepositoryException
      Throws:
      javax.jcr.RepositoryException
    • unShareDocument

      public void unShareDocument(String documentId, long destId)
      Specified by:
      unShareDocument in interface org.exoplatform.documents.storage.DocumentFileStorage