Interface PermissionServiceSPI
-
- All Superinterfaces:
org.alfresco.service.cmr.security.PermissionService
- All Known Subinterfaces:
PermissionServiceExtension,PermissionServiceTrait
- All Known Implementing Classes:
AllowPermissionServiceImpl,PermissionServiceImpl,PermissionServiceNOOPImpl,VirtualPermissionServiceExtension
public interface PermissionServiceSPI extends org.alfresco.service.cmr.security.PermissionServiceThe public API for a permission service The implementation may be changed in the application configuration- Author:
- Andy Hind
-
-
Field Summary
-
Fields inherited from interface org.alfresco.service.cmr.security.PermissionService
ADD_CHILDREN, ADMINISTRATOR_AUTHORITY, ALL_AUTHORITIES, ALL_PERMISSIONS, ASPECTS, CANCEL_CHECK_OUT, CHANGE_PERMISSIONS, CHECK_IN, CHECK_OUT, CONSUMER, CONTRIBUTOR, COORDINATOR, CREATE_ASSOCIATIONS, CREATE_CHILDREN, DELETE, DELETE_ASSOCIATIONS, DELETE_CHILDREN, DELETE_NODE, EDITOR, EXECUTE, EXECUTE_CONTENT, FULL_CONTROL, GROUP_PREFIX, GUEST_AUTHORITY, LINK_CHILDREN, LOCK, LOCK_OWNER_AUTHORITY, OWNER_AUTHORITY, PROPERTIES, READ, READ_ASSOCIATIONS, READ_CHILDREN, READ_CONTENT, READ_PERMISSIONS, READ_PROPERTIES, ROLE_PREFIX, SET_OWNER, TAKE_OWNERSHIP, UNLOCK, WRITE, WRITE_CONTENT, WRITE_PROPERTIES
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voiddeletePermission(PermissionEntry permissionEntry)Delete a single permission entryvoiddeletePermissions(java.lang.String recipient)Delete permissions for the given recipient.voiddeletePermissions(NodePermissionEntry nodePermissionEntry)Delete the permissions defined by the nodePermissionEntryNodePermissionEntryexplainPermission(org.alfresco.service.cmr.repository.NodeRef nodeRef, PermissionReference perm)Where is the permission set that controls the behaviour for the given permission for the given authentication to access the specified name.PermissionReferencegetAllPermissionReference()Get the All Permissionjava.lang.StringgetPermission(PermissionReference permissionReference)Get the string that can be used to identify the given permission reference.PermissionReferencegetPermissionReference(java.lang.String permissionName)Get the permission reference by permission name.PermissionReferencegetPermissionReference(org.alfresco.service.namespace.QName qname, java.lang.String permissionName)Get the permission reference for the given data type and permission name.NodePermissionEntrygetSetPermissions(org.alfresco.service.cmr.repository.NodeRef nodeRef)Get the permissions that have been set on the given node (it knows nothing of the parent permissions)NodePermissionEntrygetSetPermissions(org.alfresco.service.cmr.repository.StoreRef storeRef)Get the permissions set for the storejava.util.Set<PermissionReference>getSettablePermissionReferences(org.alfresco.service.cmr.repository.NodeRef nodeRef)Get the permissions that can be set for a given typejava.util.Set<PermissionReference>getSettablePermissionReferences(org.alfresco.service.namespace.QName type)Get the permissions that can be set for a given typeorg.alfresco.service.cmr.security.AccessStatushasPermission(org.alfresco.service.cmr.repository.NodeRef nodeRef, PermissionReference perm)Check that the given authentication has a particular permission for the given node.voidsetPermission(NodePermissionEntry nodePermissionEntry)Set the permissions on a node.voidsetPermission(PermissionEntry permissionEntry)Add or set a permission entry on a node.-
Methods inherited from interface org.alfresco.service.cmr.security.PermissionService
clearPermission, clearPermission, deletePermission, deletePermission, deletePermissions, deletePermissions, getAllAuthorities, getAllPermission, getAllSetPermissions, getAllSetPermissions, getAuthorisations, getInheritParentPermissions, getOwnerAuthority, getPermissions, getReaders, getReadersDenied, getSettablePermissions, getSettablePermissions, hasPermission, hasPermission, hasReadPermission, setInheritParentPermissions, setInheritParentPermissions, setPermission, setPermission
-
-
-
-
Method Detail
-
getAllPermissionReference
PermissionReference getAllPermissionReference()
Get the All Permission- Returns:
- the All permission
-
getSettablePermissionReferences
java.util.Set<PermissionReference> getSettablePermissionReferences(org.alfresco.service.namespace.QName type)
Get the permissions that can be set for a given type- Parameters:
type- QName- Returns:
- the set of permissions
-
getSettablePermissionReferences
java.util.Set<PermissionReference> getSettablePermissionReferences(org.alfresco.service.cmr.repository.NodeRef nodeRef)
Get the permissions that can be set for a given type- Parameters:
nodeRef- NodeRef- Returns:
- the set of permissions
-
getSetPermissions
NodePermissionEntry getSetPermissions(org.alfresco.service.cmr.repository.NodeRef nodeRef)
Get the permissions that have been set on the given node (it knows nothing of the parent permissions)- Parameters:
nodeRef- NodeRef- Returns:
- the node permission entry
-
hasPermission
org.alfresco.service.cmr.security.AccessStatus hasPermission(org.alfresco.service.cmr.repository.NodeRef nodeRef, PermissionReference perm)Check that the given authentication has a particular permission for the given node. (The default behaviour is to inherit permissions)- Parameters:
nodeRef- NodeRefperm- PermissionReference- Returns:
- the access status
-
explainPermission
NodePermissionEntry explainPermission(org.alfresco.service.cmr.repository.NodeRef nodeRef, PermissionReference perm)
Where is the permission set that controls the behaviour for the given permission for the given authentication to access the specified name.- Parameters:
nodeRef- NodeRefperm- PermissionReference- Returns:
- the node permission entry
-
deletePermissions
void deletePermissions(NodePermissionEntry nodePermissionEntry)
Delete the permissions defined by the nodePermissionEntry- Parameters:
nodePermissionEntry- NodePermissionEntry
-
deletePermission
void deletePermission(PermissionEntry permissionEntry)
Delete a single permission entry- Parameters:
permissionEntry- PermissionEntry
-
setPermission
void setPermission(PermissionEntry permissionEntry)
Add or set a permission entry on a node.- Parameters:
permissionEntry- PermissionEntry
-
setPermission
void setPermission(NodePermissionEntry nodePermissionEntry)
Set the permissions on a node.- Parameters:
nodePermissionEntry- NodePermissionEntry
-
getPermissionReference
PermissionReference getPermissionReference(org.alfresco.service.namespace.QName qname, java.lang.String permissionName)
Get the permission reference for the given data type and permission name.- Parameters:
qname- - may be null if the permission name is uniquepermissionName- String- Returns:
- the permission reference
-
getPermissionReference
PermissionReference getPermissionReference(java.lang.String permissionName)
Get the permission reference by permission name.- Parameters:
permissionName- String- Returns:
- the permission reference
-
getPermission
java.lang.String getPermission(PermissionReference permissionReference)
Get the string that can be used to identify the given permission reference.- Parameters:
permissionReference- PermissionReference- Returns:
- the permission short name
-
deletePermissions
void deletePermissions(java.lang.String recipient)
Delete permissions for the given recipient.- Parameters:
recipient- String
-
getSetPermissions
NodePermissionEntry getSetPermissions(org.alfresco.service.cmr.repository.StoreRef storeRef)
Get the permissions set for the store- Parameters:
storeRef- StoreRef- Returns:
- - the node permission entry
-
-