Interface PermissionProvider

All Known Subinterfaces:
PermissionProviderLocal
All Known Implementing Classes:
DefaultPermissionProvider

public interface PermissionProvider
Provider for existing permission and permission groups.
Author:
Bogdan Stefanescu, Olivier Grisel
  • Method Details

    • getPermissions

      String[] getPermissions()
      Returns:
      an array of a all registered permission names
    • getPermissionGroups

      String[] getPermissionGroups(String perm)
      Parameters:
      perm - the name of a registered permissions that belongs to permission groups (aka compound permissions)
      Returns:
      an array of a all compound permissions 'perm' is a sub-permission of, directly or not ; returns null if 'perm' is not registered or if 'perm' does not belong to any compound permission
    • getUserVisiblePermissionDescriptors

      List<UserVisiblePermission> getUserVisiblePermissionDescriptors()
      Returns:
      get the sorted list of UserVisiblePermission objects to be used in the permission management screen of the UI (be it web based, a rich client or any-thing else)
    • getUserVisiblePermissionDescriptors

      List<UserVisiblePermission> getUserVisiblePermissionDescriptors(String typeName)
      Parameters:
      typeName - the name of a Core type of the document whose ACP is to be edited by the user
      Returns:
      get the sorted list of UserVisiblePermission objects to be used in the permission management screen of the UI (be it web based, a rich client or any-thing else) ; if no specific permissions are registered for typeName, the default list is returned
    • getSubPermissions

      String[] getSubPermissions(String perm)
      Parameters:
      perm - the name of a registered compound permission
      Returns:
      the list of permission names of sub-permissions of 'perm'
    • getAliasPermissions

      String[] getAliasPermissions(String perm)
      Parameters:
      perm - the name of a registered permission
      Returns:
      the list of alias permissions to 'perm'