Interface PermissionManager

All Known Implementing Classes:
PermissionManagerImpl

public interface PermissionManager
Permission Manager for Crowd to validate Directory Permissions and Application-Directory permissions.
  • Method Details

    • hasPermission

      boolean hasPermission(Directory directory, OperationType operationType)
      Determine whether a directory has the permission to perform a certain operation.
      Parameters:
      directory - the directory to validate the permission against.
      operationType - the OperationType to check against.
      Returns:
      true if and only if the directory is allowed to perform this operation.
    • hasPermission

      boolean hasPermission(Application application, Directory directory, OperationType operationType)
      Determine whether an application has permission to execute a particular operation on a given directory.
      Parameters:
      application - application that wants to perform the operation.
      directory - directory to perform the operation on.
      operationType - type of operation to perform.
      Returns:
      true if the application and directory has this permission, false otherwise.
    • removePermission

      void removePermission(Application application, Directory directory, OperationType operationType) throws ApplicationNotFoundException
      Removes a permission with the given OperationType from the Application+Directory mapping
      Parameters:
      application - application that wants to perform the operation.
      directory - directory to forbid the operation on.
      operationType - type of operation to forbid.
      Throws:
      ApplicationNotFoundException - if the application could not be found
    • addPermission

      void addPermission(Application application, Directory directory, OperationType operationType) throws ApplicationNotFoundException
      Adds a permission for the given OperationType to an Application+Directory mapping.
      Parameters:
      application - application that wants to perform the operation.
      directory - directory to allow the operation on.
      operationType - type of operation to forbid.
      Throws:
      ApplicationNotFoundException - if the application could not be found
    • removePermission

      void removePermission(Directory directory, OperationType operationType) throws DirectoryNotFoundException
      Throws:
      DirectoryNotFoundException
    • addPermission

      void addPermission(Directory directory, OperationType operationType) throws DirectoryNotFoundException
      Throws:
      DirectoryNotFoundException