All Superinterfaces:
AuthorizableAction
All Known Implementing Classes:
AbstractGroupAction

public interface GroupAction extends AuthorizableAction
The GroupAction interface allows for implementations to be informed about and react to the following changes to a Group's members:

Please consult the parent interface AuthorizableAction for details on persisting changes, configuring actions and the API through which actions are invoked.

For convenience, an AbstractGroupAction is provided.

Since:
OAK 1.6
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    onMemberAdded(@NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull org.apache.jackrabbit.api.security.user.Authorizable member, @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper)
    A specific Authorizable was added as a member of the Group.
    void
    onMemberRemoved(@NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull org.apache.jackrabbit.api.security.user.Authorizable member, @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper)
    A specific Authorizable was removed from the Group.
    void
    onMembersAdded(@NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull Iterable<String> memberIds, @NotNull Iterable<String> failedIds, @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper)
    Multiple members were added to the Group.
    void
    onMembersAddedContentId(@NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull Iterable<String> memberContentIds, @NotNull Iterable<String> failedIds, @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper)
    Multiple members were added to the Group during XML group import.
    void
    onMembersRemoved(@NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull Iterable<String> memberIds, @NotNull Iterable<String> failedIds, @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper)
    Multiple members were removed from the Group.

    Methods inherited from interface org.apache.jackrabbit.oak.spi.security.user.action.AuthorizableAction

    init, onCreate, onCreate, onCreate, onPasswordChange, onRemove
  • Method Details

    • onMemberAdded

      void onMemberAdded(@NotNull @NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull @NotNull org.apache.jackrabbit.api.security.user.Authorizable member, @NotNull @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper) throws RepositoryException
      A specific Authorizable was added as a member of the Group. Implementations may perform specific modifications or validations.
      Parameters:
      group - The Group to which the Authorizable was added.
      member - The Authorizable added.
      root - The root associated with the user manager.
      namePathMapper -
      Throws:
      RepositoryException - If an error occurs.
    • onMembersAdded

      void onMembersAdded(@NotNull @NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull @NotNull Iterable<String> memberIds, @NotNull @NotNull Iterable<String> failedIds, @NotNull @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper) throws RepositoryException
      Multiple members were added to the Group. The members are provided as an iterable of their string-based IDs, as some members may no longer or not yet exist. Implementations may perform specific modifications or validations.
      Parameters:
      group - The Group to which the members were added.
      memberIds - An Iterable of the member IDs.
      root - The root associated with the user manager.
      namePathMapper -
      Throws:
      RepositoryException - If an error occurs.
    • onMembersAddedContentId

      void onMembersAddedContentId(@NotNull @NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull @NotNull Iterable<String> memberContentIds, @NotNull @NotNull Iterable<String> failedIds, @NotNull @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper) throws RepositoryException
      Multiple members were added to the Group during XML group import. The members are provided as an iterable of their string-based content IDs (UUIDs), as these members do not exist yet (group imported before users). Implementations may track such content ids for later processing once the user identified by the content id is added.

      Implementations may perform specific modifications or validations.

      Parameters:
      group - The Group to which the members were added.
      memberContentIds - An Iterable of the member content IDs (UUIDs).
      root - The root associated with the user manager.
      namePathMapper -
      Throws:
      RepositoryException - If an error occurs.
    • onMemberRemoved

      void onMemberRemoved(@NotNull @NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull @NotNull org.apache.jackrabbit.api.security.user.Authorizable member, @NotNull @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper) throws RepositoryException
      A specific Authorizable was removed from the Group. Implementations may perform specific modifications or validations.
      Parameters:
      group - The Group from which the Authorizable was removed.
      member - The Authorizable removed.
      root - The root associated with the user manager.
      namePathMapper -
      Throws:
      RepositoryException - If an error occurs.
    • onMembersRemoved

      void onMembersRemoved(@NotNull @NotNull org.apache.jackrabbit.api.security.user.Group group, @NotNull @NotNull Iterable<String> memberIds, @NotNull @NotNull Iterable<String> failedIds, @NotNull @NotNull org.apache.jackrabbit.oak.api.Root root, @NotNull @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper) throws RepositoryException
      Multiple members were removed from the Group. The members are provided as an iterable of their string-based IDs, as some members may no longer or not yet exist. Implementations may perform specific modifications or validations.
      Parameters:
      group - The Group from which the members were removed.
      memberIds - An Iterable of the member IDs.
      root - The root associated with the user manager.
      namePathMapper -
      Throws:
      RepositoryException - If an error occurs.