Interface AccessControlListDAO

  • All Known Implementing Classes:
    ADMAccessControlListDAO

    public interface AccessControlListDAO
    This abstracts the reading and writing of ACLs on nodes from particular node implementations.
    Author:
    andyh, janv
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void forceCopy​(org.alfresco.service.cmr.repository.NodeRef nodeRef)  
      Acl getAccessControlList​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
      Get the ACL from a node.
      Acl getAccessControlList​(org.alfresco.service.cmr.repository.StoreRef storeRef)  
      java.lang.Long getIndirectAcl​(org.alfresco.service.cmr.repository.NodeRef nodeRef)  
      java.lang.Long getInheritedAcl​(org.alfresco.service.cmr.repository.NodeRef nodeRef)  
      java.util.Map<ACLType,​java.lang.Integer> patchAcls()  
      void setAccessControlList​(org.alfresco.service.cmr.repository.NodeRef nodeRef, java.lang.Long aclId)
      Set the ACL on a node.
      void setAccessControlList​(org.alfresco.service.cmr.repository.NodeRef nodeRef, Acl acl)
      Set the ACL on a node.
      void setAccessControlList​(org.alfresco.service.cmr.repository.StoreRef storeRef, Acl acl)  
      void setFixedAcls​(java.lang.Long nodeId, java.lang.Long inheritFrom, java.lang.Long mergeFrom, java.lang.Long sharedAclToReplace, java.util.List<AclChange> changes, boolean set)  
      java.util.List<AclChange> setInheritanceForChildren​(org.alfresco.service.cmr.repository.NodeRef parent, java.lang.Long inheritFrom, java.lang.Long sharedAclToReplace)
      Update inheritance
      java.util.List<AclChange> setInheritanceForChildren​(org.alfresco.service.cmr.repository.NodeRef parent, java.lang.Long inheritFrom, java.lang.Long sharedAclToReplace, boolean asyncCall)
      Set the inheritance on a given node and it's children.
      void updateChangedAcls​(org.alfresco.service.cmr.repository.NodeRef startingPoint, java.util.List<AclChange> changes)
      Update any associated ACLs
      void updateInheritance​(java.lang.Long childNodeId, java.lang.Long oldParentAclId, java.lang.Long newParentAclId)  
    • Method Detail

      • getAccessControlList

        Acl getAccessControlList​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
        Get the ACL from a node.
        Parameters:
        nodeRef - The reference to the node.
        Returns:
        The ACL.
        Throws:
        org.alfresco.service.cmr.repository.InvalidNodeRefException
      • setAccessControlList

        void setAccessControlList​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                  Acl acl)
        Set the ACL on a node.
        Parameters:
        nodeRef - The reference to the node.
        acl - The ACL.
        Throws:
        org.alfresco.service.cmr.repository.InvalidNodeRefException
      • setAccessControlList

        void setAccessControlList​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                  java.lang.Long aclId)
        Set the ACL on a node.
        Parameters:
        nodeRef - The reference to the node.
        aclId - The ID of the ACL entity.
        Throws:
        org.alfresco.service.cmr.repository.InvalidNodeRefException - if the noderef is invalid
      • updateChangedAcls

        void updateChangedAcls​(org.alfresco.service.cmr.repository.NodeRef startingPoint,
                               java.util.List<AclChange> changes)
        Update any associated ACLs
      • setInheritanceForChildren

        java.util.List<AclChange> setInheritanceForChildren​(org.alfresco.service.cmr.repository.NodeRef parent,
                                                            java.lang.Long inheritFrom,
                                                            java.lang.Long sharedAclToReplace)
        Update inheritance
      • setInheritanceForChildren

        java.util.List<AclChange> setInheritanceForChildren​(org.alfresco.service.cmr.repository.NodeRef parent,
                                                            java.lang.Long inheritFrom,
                                                            java.lang.Long sharedAclToReplace,
                                                            boolean asyncCall)
        Set the inheritance on a given node and it's children. If the operation takes too long and asyncCall parameter set accordingly, fixed ACLs method will be synchronously called.
      • getIndirectAcl

        java.lang.Long getIndirectAcl​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
      • getInheritedAcl

        java.lang.Long getInheritedAcl​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
      • forceCopy

        void forceCopy​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
      • patchAcls

        java.util.Map<ACLType,​java.lang.Integer> patchAcls()
      • getAccessControlList

        Acl getAccessControlList​(org.alfresco.service.cmr.repository.StoreRef storeRef)
      • setAccessControlList

        void setAccessControlList​(org.alfresco.service.cmr.repository.StoreRef storeRef,
                                  Acl acl)
      • updateInheritance

        void updateInheritance​(java.lang.Long childNodeId,
                               java.lang.Long oldParentAclId,
                               java.lang.Long newParentAclId)
      • setFixedAcls

        void setFixedAcls​(java.lang.Long nodeId,
                          java.lang.Long inheritFrom,
                          java.lang.Long mergeFrom,
                          java.lang.Long sharedAclToReplace,
                          java.util.List<AclChange> changes,
                          boolean set)