Interface GroupAction
- All Superinterfaces:
AuthorizableAction
- All Known Implementing Classes:
AbstractGroupAction
The
GroupAction interface allows for implementations to be informed about and react to the following
changes to a Group's members:
onMemberAdded(Group, Authorizable, Root, NamePathMapper)onMembersAdded(Group, Iterable, Iterable, Root, NamePathMapper)onMembersAddedContentId(Group, Iterable, Iterable, Root, NamePathMapper)onMemberRemoved(Group, Authorizable, Root, NamePathMapper)onMembersRemoved(Group, Iterable, Iterable, Root, NamePathMapper)
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 TypeMethodDescriptionvoidonMemberAdded(@NotNull Group group, @NotNull Authorizable member, @NotNull Root root, @NotNull NamePathMapper namePathMapper) A specificAuthorizablewas added as a member of theGroup.voidonMemberRemoved(@NotNull Group group, @NotNull Authorizable member, @NotNull Root root, @NotNull NamePathMapper namePathMapper) A specificAuthorizablewas removed from theGroup.voidonMembersAdded(@NotNull Group group, @NotNull Iterable<String> memberIds, @NotNull Iterable<String> failedIds, @NotNull Root root, @NotNull NamePathMapper namePathMapper) Multiple members were added to theGroup.voidonMembersAddedContentId(@NotNull Group group, @NotNull Iterable<String> memberContentIds, @NotNull Iterable<String> failedIds, @NotNull Root root, @NotNull NamePathMapper namePathMapper) Multiple members were added to theGroupduring XML group import.voidonMembersRemoved(@NotNull Group group, @NotNull Iterable<String> memberIds, @NotNull Iterable<String> failedIds, @NotNull Root root, @NotNull NamePathMapper namePathMapper) Multiple members were removed from theGroup.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 Group group, @NotNull @NotNull Authorizable member, @NotNull @NotNull Root root, @NotNull @NotNull NamePathMapper namePathMapper) throws RepositoryException A specificAuthorizablewas added as a member of theGroup. Implementations may perform specific modifications or validations.- Parameters:
group- TheGroupto which theAuthorizablewas added.member- TheAuthorizableadded.root- The root associated with the user manager.namePathMapper-- Throws:
RepositoryException- If an error occurs.
-
onMembersAdded
void onMembersAdded(@NotNull @NotNull Group group, @NotNull @NotNull Iterable<String> memberIds, @NotNull @NotNull Iterable<String> failedIds, @NotNull @NotNull Root root, @NotNull @NotNull NamePathMapper namePathMapper) throws RepositoryException Multiple members were added to theGroup. 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- TheGroupto which the members were added.memberIds- AnIterableof the member IDs.root- The root associated with the user manager.namePathMapper-- Throws:
RepositoryException- If an error occurs.
-
onMembersAddedContentId
void onMembersAddedContentId(@NotNull @NotNull Group group, @NotNull @NotNull Iterable<String> memberContentIds, @NotNull @NotNull Iterable<String> failedIds, @NotNull @NotNull Root root, @NotNull @NotNull NamePathMapper namePathMapper) throws RepositoryException Multiple members were added to theGroupduring 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- TheGroupto which the members were added.memberContentIds- AnIterableof 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 Group group, @NotNull @NotNull Authorizable member, @NotNull @NotNull Root root, @NotNull @NotNull NamePathMapper namePathMapper) throws RepositoryException A specificAuthorizablewas removed from theGroup. Implementations may perform specific modifications or validations.- Parameters:
group- TheGroupfrom which theAuthorizablewas removed.member- TheAuthorizableremoved.root- The root associated with the user manager.namePathMapper-- Throws:
RepositoryException- If an error occurs.
-
onMembersRemoved
void onMembersRemoved(@NotNull @NotNull Group group, @NotNull @NotNull Iterable<String> memberIds, @NotNull @NotNull Iterable<String> failedIds, @NotNull @NotNull Root root, @NotNull @NotNull NamePathMapper namePathMapper) throws RepositoryException Multiple members were removed from theGroup. 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- TheGroupfrom which the members were removed.memberIds- AnIterableof the member IDs.root- The root associated with the user manager.namePathMapper-- Throws:
RepositoryException- If an error occurs.
-