public class ADMAccessControlListDAO extends Object implements AccessControlListDAO
Modifier and Type | Class and Description |
---|---|
static class |
ADMAccessControlListDAO.Counter
Simple counter
|
static class |
ADMAccessControlListDAO.CounterSet
Counter for each type of ACL change
|
Constructor and Description |
---|
ADMAccessControlListDAO() |
Modifier and Type | Method and 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) |
Long |
getIndirectAcl(org.alfresco.service.cmr.repository.NodeRef nodeRef) |
Long |
getInheritedAcl(org.alfresco.service.cmr.repository.NodeRef nodeRef) |
boolean |
isPreserveAuditableData() |
Map<ACLType,Integer> |
patchAcls() |
void |
setAccessControlList(org.alfresco.service.cmr.repository.NodeRef nodeRef,
Acl acl)
Set the ACL on a node.
|
void |
setAccessControlList(org.alfresco.service.cmr.repository.NodeRef nodeRef,
Long aclId)
Set the ACL on a node.
|
void |
setAccessControlList(org.alfresco.service.cmr.repository.StoreRef storeRef,
Acl acl) |
void |
setAclDAO(AclDAO aclDaoComponent) |
void |
setBehaviourFilter(BehaviourFilter behaviourFilter) |
void |
setFixedAclMaxTransactionTime(long fixedAclMaxTransactionTime) |
void |
setFixedAcls(Long nodeId,
Long inheritFrom,
Long mergeFrom,
Long sharedAclToReplace,
List<AclChange> changes,
boolean set)
Support to set a shared ACL on a node and all of its children
|
void |
setFixedAcls(Long nodeId,
Long inheritFrom,
Long mergeFrom,
Long sharedAclToReplace,
List<AclChange> changes,
boolean set,
boolean asyncCall,
boolean propagateOnChildren)
Support to set a shared ACL on a node and all of its children
|
List<AclChange> |
setInheritanceForChildren(org.alfresco.service.cmr.repository.NodeRef parent,
Long inheritFrom,
Long sharedAclToReplace)
Update inheritance
|
List<AclChange> |
setInheritanceForChildren(org.alfresco.service.cmr.repository.NodeRef parent,
Long inheritFrom,
Long sharedAclToReplace,
boolean asyncCall)
Set the inheritance on a given node and it's children.
|
void |
setNodeDAO(NodeDAO nodeDAO) |
void |
setPreserveAuditableData(boolean preserveAuditableData) |
void |
updateChangedAcls(org.alfresco.service.cmr.repository.NodeRef startingPoint,
List<AclChange> changes)
Update any associated ACLs
|
void |
updateInheritance(Long childNodeId,
Long oldParentAclId,
Long newParentAclId) |
public void setNodeDAO(NodeDAO nodeDAO)
public void setAclDAO(AclDAO aclDaoComponent)
public void setFixedAclMaxTransactionTime(long fixedAclMaxTransactionTime)
public void setBehaviourFilter(BehaviourFilter behaviourFilter)
public void setPreserveAuditableData(boolean preserveAuditableData)
public boolean isPreserveAuditableData()
public void forceCopy(org.alfresco.service.cmr.repository.NodeRef nodeRef)
forceCopy
in interface AccessControlListDAO
public Acl getAccessControlList(org.alfresco.service.cmr.repository.NodeRef nodeRef)
AccessControlListDAO
getAccessControlList
in interface AccessControlListDAO
nodeRef
- The reference to the node.public Acl getAccessControlList(org.alfresco.service.cmr.repository.StoreRef storeRef)
getAccessControlList
in interface AccessControlListDAO
public Long getIndirectAcl(org.alfresco.service.cmr.repository.NodeRef nodeRef)
getIndirectAcl
in interface AccessControlListDAO
public Long getInheritedAcl(org.alfresco.service.cmr.repository.NodeRef nodeRef)
getInheritedAcl
in interface AccessControlListDAO
public Map<ACLType,Integer> patchAcls()
patchAcls
in interface AccessControlListDAO
public void setAccessControlList(org.alfresco.service.cmr.repository.NodeRef nodeRef, Long aclId)
AccessControlListDAO
setAccessControlList
in interface AccessControlListDAO
nodeRef
- The reference to the node.aclId
- The ID of the ACL entity.public void setAccessControlList(org.alfresco.service.cmr.repository.NodeRef nodeRef, Acl acl)
AccessControlListDAO
setAccessControlList
in interface AccessControlListDAO
nodeRef
- The reference to the node.acl
- The ACL.public void setAccessControlList(org.alfresco.service.cmr.repository.StoreRef storeRef, Acl acl)
setAccessControlList
in interface AccessControlListDAO
public List<AclChange> setInheritanceForChildren(org.alfresco.service.cmr.repository.NodeRef parent, Long inheritFrom, Long sharedAclToReplace)
AccessControlListDAO
setInheritanceForChildren
in interface AccessControlListDAO
public List<AclChange> setInheritanceForChildren(org.alfresco.service.cmr.repository.NodeRef parent, Long inheritFrom, Long sharedAclToReplace, boolean asyncCall)
AccessControlListDAO
setInheritanceForChildren
in interface AccessControlListDAO
public void updateChangedAcls(org.alfresco.service.cmr.repository.NodeRef startingPoint, List<AclChange> changes)
AccessControlListDAO
updateChangedAcls
in interface AccessControlListDAO
public void setFixedAcls(Long nodeId, Long inheritFrom, Long mergeFrom, Long sharedAclToReplace, List<AclChange> changes, boolean set)
setFixedAcls
in interface AccessControlListDAO
nodeId
- the parent node idinheritFrom
- the parent node's ACLmergeFrom
- the shared ACL, if already known. If null
, will be retrieved / created lazilychanges
- the list in which to record changesset
- set the shared ACL on the parent ?public void setFixedAcls(Long nodeId, Long inheritFrom, Long mergeFrom, Long sharedAclToReplace, List<AclChange> changes, boolean set, boolean asyncCall, boolean propagateOnChildren)
nodeId
- the parent nodeinheritFrom
- the parent node's ACLmergeFrom
- the shared ACL, if already known. If null
, will be retrieved / created lazilychanges
- the list in which to record changesset
- set the shared ACL on the parent ?asyncCall
- function may require asynchronous call depending the execution time; if time exceeds configured fixedAclMaxTransactionTime
value,
recursion is stopped using propagateOnChildren parameter(set on false) and those nodes for which the method execution was not finished
in the classical way, will have ASPECT_PENDING_FIX_ACL, which will be used in FixedAclUpdater
for later processingpublic void updateInheritance(Long childNodeId, Long oldParentAclId, Long newParentAclId)
updateInheritance
in interface AccessControlListDAO
Copyright © 2005–2017 Alfresco Software. All rights reserved.