Class AbstractAclCrudDAOImpl
- java.lang.Object
-
- org.alfresco.repo.domain.permissions.AbstractAclCrudDAOImpl
-
- All Implemented Interfaces:
AclCrudDAO
- Direct Known Subclasses:
AclCrudDAOImpl
public abstract class AbstractAclCrudDAOImpl extends java.lang.Object implements AclCrudDAO
Abstract implementation for ACL crud DAO.This provides basic services such as caching, but defers to the underlying implementation for CRUD operations for: alf_access_control_list alf_acl_member alf_acl_change_set alf_access_control_entry alf_permission alf_authority Also, following are currently unused: alf_ace_context alf_authority_alias
- Since:
- 3.4
- Author:
- janv
-
-
Constructor Summary
Constructors Constructor Description AbstractAclCrudDAOImpl()Default constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddAclMembersToAcl(long aclId, java.util.List<java.lang.Long> aceIds, int depth)voidaddAclMembersToAcl(long aclId, java.util.List<org.alfresco.util.Pair<java.lang.Long,java.lang.Integer>> aceIdsWithDepths)AcecreateAce(Permission permission, Authority authority, ACEType type, org.alfresco.service.cmr.security.AccessStatus accessStatus)protected abstract longcreateAceContextEntity(AceContextEntity entity)protected abstract longcreateAceEntity(AceEntity entity)AclEntitycreateAcl(AclEntity entity)java.lang.LongcreateAclChangeSet()protected abstract java.lang.LongcreateAclChangeSetEntity()protected abstract AclEntitycreateAclEntity(AclEntity entity)protected abstract AclMemberEntitycreateAclMemberEntity(AclMemberEntity entity)AuthoritycreateAuthority(java.lang.String authorityName)protected abstract longcreateAuthorityAliasEntity(AuthorityAliasEntity entity)protected abstract AuthorityEntitycreateAuthorityEntity(AuthorityEntity entity)PermissioncreatePermission(PermissionReference permissionReference)protected abstract PermissionEntitycreatePermissionEntity(PermissionEntity entity)protected abstract intdeleteAceContextEntity(long aceContextId)protected abstract intdeleteAceEntities(java.util.List<java.lang.Long> aceIds)intdeleteAces(java.util.List<java.lang.Long> aceIds)voiddeleteAcl(long id)voiddeleteAclChangeSet(java.lang.Long changeSetId)protected abstract intdeleteAclChangeSetEntity(java.lang.Long id)protected abstract intdeleteAclEntity(long id)protected abstract intdeleteAclMemberEntities(java.util.List<java.lang.Long> aclMemberIds)protected abstract intdeleteAclMemberEntitiesByAcl(long idOfAcl)intdeleteAclMembers(java.util.List<java.lang.Long> aclMemberIds)intdeleteAclMembersByAcl(long idOfAcl)voiddeleteAuthority(long id)protected abstract intdeleteAuthorityAliasEntity(long id)protected abstract intdeleteAuthorityEntity(long id)voiddeletePermission(long id)protected abstract intdeletePermissionEntity(long id)AcegetAce(long aceEntityId)AcegetAce(Permission permission, Authority authority, ACEType type, org.alfresco.service.cmr.security.AccessStatus accessStatus)protected abstract java.util.List<java.util.Map<java.lang.String,java.lang.Object>>getAceAndAuthorityEntitiesByAcl(long idOfAcl)protected abstract AceContextEntitygetAceContextEntity(long aceContextId)protected abstract java.util.List<Ace>getAceEntitiesByAuthority(long authorityId)protected abstract AceEntitygetAceEntity(long aceEntityId)protected abstract AceEntitygetAceEntity(long permissionId, long authorityId, boolean allowed, ACEType type)java.util.List<java.util.Map<java.lang.String,java.lang.Object>>getAcesAndAuthoritiesByAcl(long idOfAcl)java.util.List<Ace>getAcesByAuthority(long authorityId)AclgetAcl(java.lang.Long id)AclChangeSetEntitygetAclChangeSet(java.lang.Long changeSetId)protected abstract AclChangeSetEntitygetAclChangeSetEntity(java.lang.Long changeSetId)protected abstract java.util.List<java.lang.Long>getAclEntitiesThatInheritFromAcl(long idOfAcl)protected abstract AclEntitygetAclEntity(long id)AclUpdateEntitygetAclForUpdate(long id)protected abstract java.util.List<AclMemberEntity>getAclMemberEntitiesByAcl(long idOfAcl)protected abstract java.util.List<AclMemberEntity>getAclMemberEntitiesByAuthority(java.lang.String authorityName)protected abstract AclMemberEntitygetAclMemberEntity(long aclId, long aceId, int pos)java.util.List<AclMember>getAclMembersByAcl(long idOfAcl)java.util.List<AclMemberEntity>getAclMembersByAclForUpdate(long idOfAcl)java.util.List<AclMember>getAclMembersByAuthority(java.lang.String authorityName)java.util.List<java.lang.Long>getAclsThatInheritFromAcl(long aclEntityId)protected abstract java.util.List<java.lang.Long>getADMNodeEntityIdsByAcl(long aclEntityId, int maxResults)java.util.List<java.lang.Long>getADMNodesByAcl(long aclEntityId, int maxResults)AuthoritygetAuthority(long id)AuthoritygetAuthority(java.lang.String authorityName)protected abstract AuthorityEntitygetAuthorityEntity(long id)protected abstract AuthorityEntitygetAuthorityEntity(java.lang.String authorityName)java.lang.LonggetLatestAclByGuid(java.lang.String aclGuid)protected abstract java.lang.LonggetLatestAclEntityByGuid(java.lang.String aclGuid)java.lang.LonggetMaxChangeSetCommitTime()java.lang.LonggetMaxChangeSetIdByCommitTime(long maxCommitTime)AcegetOrCreateAce(Permission permission, Authority authority, ACEType type, org.alfresco.service.cmr.security.AccessStatus accessStatus)AuthoritygetOrCreateAuthority(java.lang.String name)PermissiongetOrCreatePermission(PermissionReference permissionReference)PermissiongetPermission(long id)PermissiongetPermission(PermissionReference permissionReference)protected abstract PermissionEntitygetPermissionEntity(long id)protected abstract PermissionEntitygetPermissionEntity(long qnameId, java.lang.String name)voidrenameAuthority(java.lang.String before, java.lang.String after)voidrenamePermission(org.alfresco.service.namespace.QName oldTypeQName, java.lang.String oldName, org.alfresco.service.namespace.QName newTypeQName, java.lang.String newName)protected abstract java.lang.LongselectMaxChangeSetCommitTime()protected abstract java.lang.LongselectMaxChangeSetIdBeforeCommitTime(long maxCommitTime)voidsetAclEntityCache(TransactionalCache<java.io.Serializable,java.lang.Object> aclEntityCache)Set the cache to use for alf_access_control_list lookups (optional).voidsetAuthorityEntityCache(org.alfresco.repo.cache.SimpleCache<java.io.Serializable,java.lang.Object> authorityEntityCache)Set the cache to use for alf_authority lookups (optional).voidsetBatchSize(int batchSizeOverride)voidsetCheckAclConsistency()Transaction-scope setting to make the DAO guarantee the validity of all caches: some cache data will be reloaded; some cache data will be considered safe.voidsetPermissionEntityCache(org.alfresco.repo.cache.SimpleCache<java.io.Serializable,java.lang.Object> permissionEntityCache)Set the cache to use for alf_permission lookups (optional).voidsetQnameDAO(QNameDAO qnameDAO)protected abstract intupdateAceEntity(AceEntity updatedAceEntity)voidupdateAcl(AclUpdateEntity entity)voidupdateAclChangeSet(java.lang.Long aclChangeSetEntityId, long commitTimeMs)protected abstract intupdateAclEntity(AclEntity entity)voidupdateAclMember(AclMemberEntity entity)protected abstract intupdateAclMemberEntity(AclMemberEntity entity)protected abstract intupdateAuthorityEntity(AuthorityEntity updateEntity)protected abstract intupdateChangeSetEntity(java.lang.Long id, long commitTimeMs)protected abstract intupdatePermissionEntity(PermissionEntity updateEntity)
-
-
-
Method Detail
-
setQnameDAO
public void setQnameDAO(QNameDAO qnameDAO)
-
setBatchSize
public void setBatchSize(int batchSizeOverride)
-
setAclEntityCache
public void setAclEntityCache(TransactionalCache<java.io.Serializable,java.lang.Object> aclEntityCache)
Set the cache to use for alf_access_control_list lookups (optional).- Parameters:
aclEntityCache- the cache of IDs to AclEntities
-
setAuthorityEntityCache
public void setAuthorityEntityCache(org.alfresco.repo.cache.SimpleCache<java.io.Serializable,java.lang.Object> authorityEntityCache)
Set the cache to use for alf_authority lookups (optional).- Parameters:
authorityEntityCache- the cache of IDs to AclEntities
-
setPermissionEntityCache
public void setPermissionEntityCache(org.alfresco.repo.cache.SimpleCache<java.io.Serializable,java.lang.Object> permissionEntityCache)
Set the cache to use for alf_permission lookups (optional).- Parameters:
permissionEntityCache- the cache of IDs to PermissionEntities
-
createAcl
public AclEntity createAcl(AclEntity entity)
- Specified by:
createAclin interfaceAclCrudDAO
-
getAcl
public Acl getAcl(java.lang.Long id)
- Specified by:
getAclin interfaceAclCrudDAO
-
setCheckAclConsistency
public void setCheckAclConsistency()
Description copied from interface:AclCrudDAOTransaction-scope setting to make the DAO guarantee the validity of all caches: some cache data will be reloaded; some cache data will be considered safe.- Specified by:
setCheckAclConsistencyin interfaceAclCrudDAO
-
getAclForUpdate
public AclUpdateEntity getAclForUpdate(long id)
- Specified by:
getAclForUpdatein interfaceAclCrudDAO
-
getAclsThatInheritFromAcl
public java.util.List<java.lang.Long> getAclsThatInheritFromAcl(long aclEntityId)
- Specified by:
getAclsThatInheritFromAclin interfaceAclCrudDAO
-
getLatestAclByGuid
public java.lang.Long getLatestAclByGuid(java.lang.String aclGuid)
- Specified by:
getLatestAclByGuidin interfaceAclCrudDAO
-
getADMNodesByAcl
public java.util.List<java.lang.Long> getADMNodesByAcl(long aclEntityId, int maxResults)- Specified by:
getADMNodesByAclin interfaceAclCrudDAO
-
updateAcl
public void updateAcl(AclUpdateEntity entity)
- Specified by:
updateAclin interfaceAclCrudDAO
-
deleteAcl
public void deleteAcl(long id)
- Specified by:
deleteAclin interfaceAclCrudDAO
-
getAclEntity
protected abstract AclEntity getAclEntity(long id)
-
getAclEntitiesThatInheritFromAcl
protected abstract java.util.List<java.lang.Long> getAclEntitiesThatInheritFromAcl(long idOfAcl)
-
getLatestAclEntityByGuid
protected abstract java.lang.Long getLatestAclEntityByGuid(java.lang.String aclGuid)
-
updateAclEntity
protected abstract int updateAclEntity(AclEntity entity)
-
updateAceEntity
protected abstract int updateAceEntity(AceEntity updatedAceEntity)
-
deleteAclEntity
protected abstract int deleteAclEntity(long id)
-
getADMNodeEntityIdsByAcl
protected abstract java.util.List<java.lang.Long> getADMNodeEntityIdsByAcl(long aclEntityId, int maxResults)
-
addAclMembersToAcl
public void addAclMembersToAcl(long aclId, java.util.List<java.lang.Long> aceIds, int depth)- Specified by:
addAclMembersToAclin interfaceAclCrudDAO
-
addAclMembersToAcl
public void addAclMembersToAcl(long aclId, java.util.List<org.alfresco.util.Pair<java.lang.Long,java.lang.Integer>> aceIdsWithDepths)- Specified by:
addAclMembersToAclin interfaceAclCrudDAO
-
getAclMembersByAcl
public java.util.List<AclMember> getAclMembersByAcl(long idOfAcl)
- Specified by:
getAclMembersByAclin interfaceAclCrudDAO
-
getAclMembersByAclForUpdate
public java.util.List<AclMemberEntity> getAclMembersByAclForUpdate(long idOfAcl)
- Specified by:
getAclMembersByAclForUpdatein interfaceAclCrudDAO
-
getAclMembersByAuthority
public java.util.List<AclMember> getAclMembersByAuthority(java.lang.String authorityName)
- Specified by:
getAclMembersByAuthorityin interfaceAclCrudDAO
-
updateAclMember
public void updateAclMember(AclMemberEntity entity)
- Specified by:
updateAclMemberin interfaceAclCrudDAO
-
deleteAclMembers
public int deleteAclMembers(java.util.List<java.lang.Long> aclMemberIds)
- Specified by:
deleteAclMembersin interfaceAclCrudDAO
-
deleteAclMembersByAcl
public int deleteAclMembersByAcl(long idOfAcl)
- Specified by:
deleteAclMembersByAclin interfaceAclCrudDAO
-
createAclMemberEntity
protected abstract AclMemberEntity createAclMemberEntity(AclMemberEntity entity)
-
getAclMemberEntitiesByAcl
protected abstract java.util.List<AclMemberEntity> getAclMemberEntitiesByAcl(long idOfAcl)
-
getAclMemberEntitiesByAuthority
protected abstract java.util.List<AclMemberEntity> getAclMemberEntitiesByAuthority(java.lang.String authorityName)
-
updateAclMemberEntity
protected abstract int updateAclMemberEntity(AclMemberEntity entity)
-
deleteAclMemberEntities
protected abstract int deleteAclMemberEntities(java.util.List<java.lang.Long> aclMemberIds)
-
deleteAclMemberEntitiesByAcl
protected abstract int deleteAclMemberEntitiesByAcl(long idOfAcl)
-
getAclMemberEntity
protected abstract AclMemberEntity getAclMemberEntity(long aclId, long aceId, int pos)
-
createAclChangeSet
public java.lang.Long createAclChangeSet()
- Specified by:
createAclChangeSetin interfaceAclCrudDAO
-
updateAclChangeSet
public void updateAclChangeSet(java.lang.Long aclChangeSetEntityId, long commitTimeMs)- Specified by:
updateAclChangeSetin interfaceAclCrudDAO
-
getAclChangeSet
public AclChangeSetEntity getAclChangeSet(java.lang.Long changeSetId)
- Specified by:
getAclChangeSetin interfaceAclCrudDAO
-
deleteAclChangeSet
public void deleteAclChangeSet(java.lang.Long changeSetId)
- Specified by:
deleteAclChangeSetin interfaceAclCrudDAO
-
createAclChangeSetEntity
protected abstract java.lang.Long createAclChangeSetEntity()
-
getAclChangeSetEntity
protected abstract AclChangeSetEntity getAclChangeSetEntity(java.lang.Long changeSetId)
-
deleteAclChangeSetEntity
protected abstract int deleteAclChangeSetEntity(java.lang.Long id)
-
updateChangeSetEntity
protected abstract int updateChangeSetEntity(java.lang.Long id, long commitTimeMs)
-
createAce
public Ace createAce(Permission permission, Authority authority, ACEType type, org.alfresco.service.cmr.security.AccessStatus accessStatus)
- Specified by:
createAcein interfaceAclCrudDAO
-
getAce
public Ace getAce(Permission permission, Authority authority, ACEType type, org.alfresco.service.cmr.security.AccessStatus accessStatus)
- Specified by:
getAcein interfaceAclCrudDAO
-
getAce
public Ace getAce(long aceEntityId)
- Specified by:
getAcein interfaceAclCrudDAO
-
getOrCreateAce
public Ace getOrCreateAce(Permission permission, Authority authority, ACEType type, org.alfresco.service.cmr.security.AccessStatus accessStatus)
- Specified by:
getOrCreateAcein interfaceAclCrudDAO
-
getAcesByAuthority
public java.util.List<Ace> getAcesByAuthority(long authorityId)
- Specified by:
getAcesByAuthorityin interfaceAclCrudDAO
-
getAcesAndAuthoritiesByAcl
public java.util.List<java.util.Map<java.lang.String,java.lang.Object>> getAcesAndAuthoritiesByAcl(long idOfAcl)
- Specified by:
getAcesAndAuthoritiesByAclin interfaceAclCrudDAO
-
deleteAces
public int deleteAces(java.util.List<java.lang.Long> aceIds)
- Specified by:
deleteAcesin interfaceAclCrudDAO
-
createAceEntity
protected abstract long createAceEntity(AceEntity entity)
-
getAceEntity
protected abstract AceEntity getAceEntity(long aceEntityId)
-
getAceEntity
protected abstract AceEntity getAceEntity(long permissionId, long authorityId, boolean allowed, ACEType type)
-
getAceEntitiesByAuthority
protected abstract java.util.List<Ace> getAceEntitiesByAuthority(long authorityId)
-
getAceAndAuthorityEntitiesByAcl
protected abstract java.util.List<java.util.Map<java.lang.String,java.lang.Object>> getAceAndAuthorityEntitiesByAcl(long idOfAcl)
-
deleteAceEntities
protected abstract int deleteAceEntities(java.util.List<java.lang.Long> aceIds)
-
createPermission
public Permission createPermission(PermissionReference permissionReference)
- Specified by:
createPermissionin interfaceAclCrudDAO
-
getPermission
public Permission getPermission(long id)
- Specified by:
getPermissionin interfaceAclCrudDAO
-
getPermission
public Permission getPermission(PermissionReference permissionReference)
- Specified by:
getPermissionin interfaceAclCrudDAO
-
getOrCreatePermission
public Permission getOrCreatePermission(PermissionReference permissionReference)
- Specified by:
getOrCreatePermissionin interfaceAclCrudDAO
-
renamePermission
public void renamePermission(org.alfresco.service.namespace.QName oldTypeQName, java.lang.String oldName, org.alfresco.service.namespace.QName newTypeQName, java.lang.String newName)- Specified by:
renamePermissionin interfaceAclCrudDAO
-
deletePermission
public void deletePermission(long id)
- Specified by:
deletePermissionin interfaceAclCrudDAO
-
createPermissionEntity
protected abstract PermissionEntity createPermissionEntity(PermissionEntity entity)
-
getPermissionEntity
protected abstract PermissionEntity getPermissionEntity(long id)
-
getPermissionEntity
protected abstract PermissionEntity getPermissionEntity(long qnameId, java.lang.String name)
-
updatePermissionEntity
protected abstract int updatePermissionEntity(PermissionEntity updateEntity)
-
deletePermissionEntity
protected abstract int deletePermissionEntity(long id)
-
createAuthority
public Authority createAuthority(java.lang.String authorityName)
-
getAuthority
public Authority getAuthority(long id)
- Specified by:
getAuthorityin interfaceAclCrudDAO
-
getAuthority
public Authority getAuthority(java.lang.String authorityName)
- Specified by:
getAuthorityin interfaceAclCrudDAO
-
getOrCreateAuthority
public Authority getOrCreateAuthority(java.lang.String name)
- Specified by:
getOrCreateAuthorityin interfaceAclCrudDAO
-
renameAuthority
public void renameAuthority(java.lang.String before, java.lang.String after)- Specified by:
renameAuthorityin interfaceAclCrudDAO
-
deleteAuthority
public void deleteAuthority(long id)
- Specified by:
deleteAuthorityin interfaceAclCrudDAO
-
createAuthorityEntity
protected abstract AuthorityEntity createAuthorityEntity(AuthorityEntity entity)
-
getAuthorityEntity
protected abstract AuthorityEntity getAuthorityEntity(long id)
-
getAuthorityEntity
protected abstract AuthorityEntity getAuthorityEntity(java.lang.String authorityName)
-
updateAuthorityEntity
protected abstract int updateAuthorityEntity(AuthorityEntity updateEntity)
-
deleteAuthorityEntity
protected abstract int deleteAuthorityEntity(long id)
-
createAceContextEntity
protected abstract long createAceContextEntity(AceContextEntity entity)
-
getAceContextEntity
protected abstract AceContextEntity getAceContextEntity(long aceContextId)
-
deleteAceContextEntity
protected abstract int deleteAceContextEntity(long aceContextId)
-
createAuthorityAliasEntity
protected abstract long createAuthorityAliasEntity(AuthorityAliasEntity entity)
-
deleteAuthorityAliasEntity
protected abstract int deleteAuthorityAliasEntity(long id)
-
getMaxChangeSetCommitTime
public java.lang.Long getMaxChangeSetCommitTime()
- Specified by:
getMaxChangeSetCommitTimein interfaceAclCrudDAO- Returns:
- Long
-
selectMaxChangeSetCommitTime
protected abstract java.lang.Long selectMaxChangeSetCommitTime()
- Returns:
- Long
-
getMaxChangeSetIdByCommitTime
public java.lang.Long getMaxChangeSetIdByCommitTime(long maxCommitTime)
- Specified by:
getMaxChangeSetIdByCommitTimein interfaceAclCrudDAO- Parameters:
maxCommitTime- long- Returns:
- Long
-
selectMaxChangeSetIdBeforeCommitTime
protected abstract java.lang.Long selectMaxChangeSetIdBeforeCommitTime(long maxCommitTime)
- Parameters:
maxCommitTime- long- Returns:
- Long
-
-