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 Details

    • getAccessControlList

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

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

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

      void updateChangedAcls(NodeRef startingPoint, List<AclChange> changes)
      Update any associated ACLs
    • setInheritanceForChildren

      List<AclChange> setInheritanceForChildren(NodeRef parent, Long inheritFrom, Long sharedAclToReplace)
      Update inheritance
    • setInheritanceForChildren

      List<AclChange> setInheritanceForChildren(NodeRef parent, Long inheritFrom, 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.
    • setInheritanceForChildren

      List<AclChange> setInheritanceForChildren(NodeRef parent, Long inheritFrom, Long sharedAclToReplace, boolean asyncCall, boolean forceSharedACL)
      Set the inheritance on a given node and it's children. If an unexpected ACL occurs in a child, it can be overriden by setting forceSharedACL
    • getIndirectAcl

      Long getIndirectAcl(NodeRef nodeRef)
    • getInheritedAcl

      Long getInheritedAcl(NodeRef nodeRef)
    • forceCopy

      void forceCopy(NodeRef nodeRef)
    • patchAcls

      Map<ACLType,Integer> patchAcls()
    • getAccessControlList

      Acl getAccessControlList(StoreRef storeRef)
    • setAccessControlList

      void setAccessControlList(StoreRef storeRef, Acl acl)
    • updateInheritance

      void updateInheritance(Long childNodeId, Long oldParentAclId, Long newParentAclId)
    • setFixedAcls

      void setFixedAcls(Long nodeId, Long inheritFrom, Long mergeFrom, Long sharedAclToReplace, List<AclChange> changes, boolean set)
    • removePendingAclAspect

      void removePendingAclAspect(Long nodeId)