Interface PrincipalSetPolicy

All Superinterfaces:
AccessControlPolicy
All Known Subinterfaces:
CugPolicy

@ProviderType public interface PrincipalSetPolicy extends AccessControlPolicy
Extension of the JCR AccessControlPolicy intended to grant a set of Principals the ability to perform certain actions. The scope of this policy (and thus the affected items) is an implementation detail; it may e.g. take effect on the tree defined by the Node, where a given PrincipalSetPolicy is being applied.

The very details on what actions are granted by a given PrincipalSetPolicy remains an implementation detail. Similarly a given permission model is in charge of defining the interactions and effects different policies will have if used together in the same repository.

  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    addPrincipals(@NotNull Principal... principals)
    Add Principals that are allowed to perform some implementation specific actions on those items where this policy takes effect.
    @NotNull Set<Principal>
    Returns the set of Principals that are allowed to perform implementation specific actions on the items affected by this policy.
    boolean
    removePrincipals(@NotNull Principal... principals)
    Remove the specified Principals for the set of allowed principals thus revoking their ability to perform the implementation specific actions on items where this policy takes effect.
  • Method Details

    • getPrincipals

      @NotNull @NotNull Set<Principal> getPrincipals()
      Returns the set of Principals that are allowed to perform implementation specific actions on the items affected by this policy.
      Returns:
      The set of Principals that are allowed to perform implementation specific actions on the those items where this policy takes effect.
    • addPrincipals

      boolean addPrincipals(@NotNull @NotNull Principal... principals) throws AccessControlException
      Add Principals that are allowed to perform some implementation specific actions on those items where this policy takes effect.
      Parameters:
      principals - The Principals that are granted access.
      Returns:
      true if this policy was modified; false otherwise.
      Throws:
      AccessControlException - If any of the specified principals is considered invalid or if another access control specific error occurs.
    • removePrincipals

      boolean removePrincipals(@NotNull @NotNull Principal... principals) throws AccessControlException
      Remove the specified Principals for the set of allowed principals thus revoking their ability to perform the implementation specific actions on items where this policy takes effect.
      Parameters:
      principals - The Principals for which access should be revoked.
      Returns:
      true if this policy was modified; false otherwise.
      Throws:
      AccessControlException - If any of the specified principals is considered invalid or if another access control specific error occurs.