Class CrowdServiceImpl
java.lang.Object
com.atlassian.crowd.embedded.core.CrowdServiceImpl
- All Implemented Interfaces:
CrowdService,UnfilteredCrowdService
Default implementation of the CrowdService
-
Constructor Summary
ConstructorsConstructorDescriptionCrowdServiceImpl(ApplicationFactory applicationFactory, ApplicationService applicationService, DirectoryInstanceLoader directoryInstanceLoader) -
Method Summary
Modifier and TypeMethodDescriptionAdds agroupto the directory store.booleanaddGroupToGroup(Group childGroup, Group parentGroup) Adds a group as a member of a parent group.Adds auserto the directory store.addUser(UserWithAttributes user, String credential) Adds auserto the directory store.booleanaddUserToGroup(User user, Group group) Adds a user as a member of a group.authenticate(String name, String credential) Authenticates auserwith the given credential.Gets details of the possible operations that can be performed onnew users.Finds thegroupthat matches the suppliedname.getGroupWithAttributes(String name) Finds thegroupthat matches the suppliedname.getRemoteUser(String username) Returns theuserthat matches the suppliednamefrom a remote directory.Returns theuserthat matches the suppliedname.getUserWithAttributes(String name) Returns theuserthat matches the suppliedname.booleanisGroupDirectGroupMember(Group childGroup, Group parentGroup) Determines if a group is a direct member of another group.booleanisGroupMemberOfGroup(Group childGroup, Group parentGroup) Returnstrueif thechildGroupis a direct or indirect (nested) member of theparentGroup.booleanisGroupMemberOfGroup(String childGroupName, String parentGroupName) ReturnstrueifchildGroupNameis a direct or indirect (nested) member ofparentGroupName.booleanisUserDirectGroupMember(User user, Group group) Determines if a user is a direct member of a group.booleanisUserMemberOfGroup(User user, Group group) Returnstrueif the user is a direct or indirect (nested) member of the group.booleanisUserMemberOfGroup(String userName, String groupName) Returnstrueif the user is a direct or indirect (nested) member of the group.voidremoveAllGroupAttributes(Group group) Removes all group attributes.voidremoveAllUserAttributes(User user) Remove all attributes for a user.booleanremoveGroup(Group group) Removes thegroupthat matches the suppliedname.voidremoveGroupAttribute(Group group, String attributeName) Removes all the values for a single attribute key for a group.booleanremoveGroupFromGroup(Group childGroup, Group parentGroup) Removes a group as a member of a parent group.booleanremoveUser(User user) Removes theuserthat matches the suppliedname.voidremoveUserAttribute(User user, String attributeName) Removes all the values for a single attribute key for a user.booleanremoveUserFromGroup(User user, Group group) Removes a user as a member of a group.renameUser(User user, String newUsername) Renames theUser.<T> Iterable<T>Searches for entities (e.g.voidsetGroupAttribute(Group group, String attributeName, String attributeValue) Adds or updates a group's attributes with the new attributes.voidsetGroupAttribute(Group group, String attributeName, Set<String> attributeValues) Adds or updates a group's attributes with the newattributes.voidsetUserAttribute(User user, String attributeName, String attributeValue) Adds or updates a user's attribute with the new attribute value.voidsetUserAttribute(User user, String attributeName, Set<String> attributeValues) Adds or updates a user's attribute with the new attribute values.setUserStatusLocally(String username, boolean userActiveInternally) Deactivates/Activates theUserin the internal directory.updateGroup(Group group) Updates thegroup.updateUser(User user) Updates theUser.voidupdateUserCredential(User user, String credential) userAuthenticated(String username) Acts as if the user has just authenticated.verifyCredentials(String name, String credential) Verifies credentials for auser.
-
Constructor Details
-
CrowdServiceImpl
public CrowdServiceImpl(ApplicationFactory applicationFactory, ApplicationService applicationService, DirectoryInstanceLoader directoryInstanceLoader)
-
-
Method Details
-
authenticate
public User authenticate(String name, String credential) throws FailedAuthenticationException, OperationFailedException Description copied from interface:CrowdServiceAuthenticates auserwith the given credential.- Specified by:
authenticatein interfaceCrowdService- Parameters:
name- The name of the user (username).credential- The supplied credential to authenticate with- Returns:
- The populated user if the authentication is valid.
- Throws:
FailedAuthenticationException- Authentication with the provided credentials failed. It may indicate that the user does not exist or the user's account is inactive or the credentials are incorrectInactiveAccountException- The supplied user is inactive.ExpiredCredentialException- The user's credentials have expired. The user must change their credentials in order to successfully authenticate.AccountNotFoundException- User with the given name could not be foundOperationFailedException- underlying directory implementation failed to execute the operation.
-
verifyCredentials
public User verifyCredentials(String name, String credential) throws FailedAuthenticationException, OperationFailedException Description copied from interface:CrowdServiceVerifies credentials for auser. This API can be used in case of two-step verification for user credential verification without fully authenticating the user.- Specified by:
verifyCredentialsin interfaceCrowdService- Parameters:
name- The name of the user (username).credential- The supplied credential to authenticate with- Returns:
- The populated user if the credentials are valid.
- Throws:
FailedAuthenticationException- Authentication with the provided credentials failed. It may indicate that the user does not exist or the user's account is inactive or the credentials are incorrectInactiveAccountException- The supplied user is inactive.ExpiredCredentialException- The user's credentials have expired. The user must change their credentials in order to successfully authenticate.AccountNotFoundException- User with the given name could not be foundOperationFailedException- underlying directory implementation failed to execute the operation.
-
getUser
Description copied from interface:CrowdServiceReturns theuserthat matches the suppliedname.- Specified by:
getUserin interfaceCrowdService- Parameters:
name- the name of the user (username). Does not allow null, blank or empty strings.- Returns:
- user entity or
nullif the user is not found
-
getRemoteUser
Description copied from interface:CrowdServiceReturns theuserthat matches the suppliednamefrom a remote directory. Note that this may potentially cause a remote call to a authentication service.- Specified by:
getRemoteUserin interfaceCrowdService- Parameters:
username- the name of the user (username). Does not allow null, blank or empty strings.- Returns:
- user entity or
nullif the user is not found
-
userAuthenticated
public User userAuthenticated(String username) throws UserNotFoundException, OperationFailedException, InactiveAccountException Description copied from interface:CrowdServiceActs as if the user has just authenticated. Depending on the configuration it might update the user details from a remote directory. Usually this happens as a part ofCrowdService.authenticate(String, String), but this could be called if the user was authenticated in a different way.- Specified by:
userAuthenticatedin interfaceCrowdService- Parameters:
username- the username for the authenticated user- Returns:
- the current state of the authenticated user
- Throws:
UserNotFoundException- when the user doesn't existOperationFailedException- when one of the post-authentication operation failsInactiveAccountException- when the user account is inactive
-
getUserWithAttributes
Description copied from interface:CrowdServiceReturns theuserthat matches the suppliedname.- Specified by:
getUserWithAttributesin interfaceCrowdService- Parameters:
name- the name of the user (username).- Returns:
- user entity with attributes or
nullif the user is not found
-
getGroup
Description copied from interface:CrowdServiceFinds thegroupthat matches the suppliedname.- Specified by:
getGroupin interfaceCrowdService- Parameters:
name- the name of the group.- Returns:
- group entity,
nullif not found.
-
getGroupWithAttributes
Description copied from interface:CrowdServiceFinds thegroupthat matches the suppliedname.- Specified by:
getGroupWithAttributesin interfaceCrowdService- Parameters:
name- the name of the group.- Returns:
- group entity with attributes,
nullif not found.
-
search
Description copied from interface:CrowdServiceSearches for entities (e.g.GrouporUser) of type<T>that match the supplied search query. Search return types must be eitherString,UserorGroup.- Specified by:
searchin interfaceCrowdService- Parameters:
query- Query for a given entity (e.g.GrouporUser)- Returns:
- entities of type
Tmatching the search query. AnIterablecontaining no results will be returned if there are no matches for the query.
-
isUserMemberOfGroup
Description copied from interface:CrowdServiceReturnstrueif the user is a direct or indirect (nested) member of the group.- Specified by:
isUserMemberOfGroupin interfaceCrowdService- Parameters:
userName- user to inspect.groupName- group to inspect.- Returns:
trueif and only if the user is a direct or indirect (nested) member of the group. If the user or group cannot found, thenfalseis returned.- See Also:
-
isUserMemberOfGroup
Description copied from interface:CrowdServiceReturnstrueif the user is a direct or indirect (nested) member of the group.- Specified by:
isUserMemberOfGroupin interfaceCrowdService- Parameters:
user- user to inspect.group- group to inspect.- Returns:
trueif and only if the user is a direct or indirect (nested) member of the group, otherwise false. If the user or group cannot found, thenfalseis returned.- See Also:
-
isGroupMemberOfGroup
Description copied from interface:CrowdServiceReturnstrueifchildGroupNameis a direct or indirect (nested) member ofparentGroupName.- Specified by:
isGroupMemberOfGroupin interfaceCrowdService- Parameters:
childGroupName- name of child group to inspect.parentGroupName- name of parent group to inspect.- Returns:
trueif and only if thechildGroupNameis a direct or indirect (nested) member of theparentGroupName. If any of the groups cannot found, thenfalseis returned.
-
isGroupMemberOfGroup
Description copied from interface:CrowdServiceReturnstrueif thechildGroupis a direct or indirect (nested) member of theparentGroup.- Specified by:
isGroupMemberOfGroupin interfaceCrowdService- Parameters:
childGroup- group to inspect.parentGroup- group to inspect.- Returns:
trueif and only if thechildGroupis a direct or indirect (nested) member of theparentGroup. If any of the groups cannot found, thenfalseis returned.
-
addUser
public User addUser(User user, String credential) throws InvalidUserException, InvalidCredentialException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceAdds auserto the directory store. The user must have non-null names and email address.- Specified by:
addUserin interfaceCrowdService- Parameters:
user- template of the user to add.credential- password. May not be null or blank.- Returns:
- the added user retrieved from the underlying store.
- Throws:
InvalidUserException- The supplied user's details are invalid and/or incomplete.InvalidCredentialException- The supplied credential is invalid, this may be due the credential not matching required directory constraints.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- if the operation failed for any other reason
-
addUser
public UserWithAttributes addUser(UserWithAttributes user, String credential) throws InvalidUserException, InvalidCredentialException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceAdds auserto the directory store. The user must have non-null names and email address.- Specified by:
addUserin interfaceCrowdService- Parameters:
user- template of the user to add.credential- password. May not be null or blank.- Returns:
- the added user retrieved from the underlying store.
- Throws:
InvalidUserException- The supplied user's details are invalid and/or incomplete.InvalidCredentialException- The supplied credential is invalid, this may be due the credential not matching required directory constraints.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- if the operation failed for any other reason
-
updateUser
public User updateUser(User user) throws UserNotFoundException, InvalidUserException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceUpdates theUser. The user must have non-null names and email address.- Specified by:
updateUserin interfaceCrowdService- Parameters:
user- The user to update.- Returns:
- the updated user retrieved from the underlying store. This might be a new object instance, depending on the underlying
Directory - Throws:
UserNotFoundException- if the supplied user does not exist in thedirectory.InvalidUserException- The supplied user's details are invalid and/or incomplete.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
setUserStatusLocally
public User setUserStatusLocally(String username, boolean userActiveInternally) throws UserNotFoundException, InvalidUserException, OperationNotPermittedException, OperationFailedException, DirectoryNotFoundException Description copied from interface:CrowdServiceDeactivates/Activates theUserin the internal directory.- Specified by:
setUserStatusLocallyin interfaceCrowdService- Parameters:
username- The user to Deactivate/Activate.userActiveInternally- Operation to Deactivate/Activate.- Returns:
- the updated user retrieved from the underlying store. This might be a new object instance, depending on the underlying
Directory - Throws:
UserNotFoundException- if the supplied user does not exist in thedirectory.InvalidUserException- The supplied user's details are invalid and/or incomplete.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.DirectoryNotFoundException
-
renameUser
public User renameUser(User user, String newUsername) throws UserNotFoundException, InvalidUserException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceRenames theUser.- Specified by:
renameUserin interfaceCrowdService- Parameters:
user- user to rename.newUsername- new username of the renamed user.- Returns:
- the renamed User.
- Throws:
UserNotFoundException- if the supplied user does not exist.InvalidUserException- if the new username does not meet the username requirements for an associated directory.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performed.OperationFailedException- underlying directory implementation failed to execute the operation.
-
updateUserCredential
public void updateUserCredential(User user, String credential) throws UserNotFoundException, InvalidCredentialException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdService- Specified by:
updateUserCredentialin interfaceCrowdService- Parameters:
user- The name of the user (username).credential- The new credential (password). May not be null or blank.- Throws:
UserNotFoundException- if the supplied user does not exist in thedirectory.InvalidCredentialException- The supplied credential is invalid, this may be due the credential not matching required directory constraints.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
setUserAttribute
public void setUserAttribute(User user, String attributeName, String attributeValue) throws UserNotFoundException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceAdds or updates a user's attribute with the new attribute value. The attributes represents new or updated attributes and does not replace existing attributes unless the key of an attribute matches the key of an existing attribute. This will not remove any attributes.- Specified by:
setUserAttributein interfaceCrowdService- Parameters:
user- user to update.attributeName- the name of the attributeattributeValue- the new value of the attribute; any existing values will be replaced- Throws:
UserNotFoundException- the supplied user does not exist.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
setUserAttribute
public void setUserAttribute(User user, String attributeName, Set<String> attributeValues) throws UserNotFoundException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceAdds or updates a user's attribute with the new attribute values. The attributes represents new or updated attributes and does not replace existing attributes unless the key of an attribute matches the key of an existing. This will not remove any attributes.- Specified by:
setUserAttributein interfaceCrowdService- Parameters:
user- user to update.attributeName- the name of the attributeattributeValues- the new set of values; any existing values will be replaced- Throws:
UserNotFoundException- the supplied user does not exist.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
removeUserAttribute
public void removeUserAttribute(User user, String attributeName) throws UserNotFoundException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceRemoves all the values for a single attribute key for a user.- Specified by:
removeUserAttributein interfaceCrowdService- Parameters:
user- user to update.attributeName- name of attribute to remove.- Throws:
UserNotFoundException- user with supplied username does not exist.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
removeAllUserAttributes
public void removeAllUserAttributes(User user) throws UserNotFoundException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceRemove all attributes for a user.- Specified by:
removeAllUserAttributesin interfaceCrowdService- Parameters:
user- user to update.- Throws:
UserNotFoundException- user with supplied username does not exist.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
removeUser
public boolean removeUser(User user) throws OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceRemoves theuserthat matches the suppliedname.- Specified by:
removeUserin interfaceCrowdService- Parameters:
user- user to remove.- Returns:
true</tt> if the user was removed as a result of this call, <tt>falseif the user does not exist.- Throws:
OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
addGroup
public Group addGroup(Group group) throws InvalidGroupException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceAdds agroupto the directory store.- Specified by:
addGroupin interfaceCrowdService- Parameters:
group- template of the group to add.- Returns:
- the added group retrieved from the underlying store.
- Throws:
InvalidGroupException- if the group already exists in ANY associated directory or the group template does not have the required properties populated.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
updateGroup
public Group updateGroup(Group group) throws InvalidGroupException, OperationNotPermittedException, GroupNotFoundException, OperationFailedException Description copied from interface:CrowdServiceUpdates thegroup.- Specified by:
updateGroupin interfaceCrowdService- Parameters:
group- The group to update.- Returns:
- the updated group retrieved from the underlying store.
- Throws:
InvalidGroupException- the supplied group is invalid.OperationNotPermittedException- if the directory has been configured to not allow the operation to be performedGroupNotFoundException- if group with given name does not exist in ANY assigned directory.OperationFailedException- underlying directory implementation failed to execute the operation.
-
setGroupAttribute
public void setGroupAttribute(Group group, String attributeName, String attributeValue) throws GroupNotFoundException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceAdds or updates a group's attributes with the new attributes. The attributes represents new or updated attributes and does not replace existing attributes unless the key of an attribute matches the key of an existing. This will not remove any attributes.- Specified by:
setGroupAttributein interfaceCrowdService- Parameters:
group- name of group to update.attributeName- the name up the attribute to add or updateattributeValue- the value of the attribute- Throws:
GroupNotFoundException- if thegroupcould not be foundOperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
setGroupAttribute
public void setGroupAttribute(Group group, String attributeName, Set<String> attributeValues) throws GroupNotFoundException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceAdds or updates a group's attributes with the newattributes. The attributes represents new or updated attributes and does not replace existing attributes unless the key of an attribute matches the key of an existing. This will not remove any attributes.- Specified by:
setGroupAttributein interfaceCrowdService- Parameters:
group- name of group to update.attributeName- the name up the attribute to add or updateattributeValues- a set of values to update- Throws:
GroupNotFoundException- if thegroupcould not be foundOperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
removeGroupAttribute
public void removeGroupAttribute(Group group, String attributeName) throws GroupNotFoundException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceRemoves all the values for a single attribute key for a group.- Specified by:
removeGroupAttributein interfaceCrowdService- Parameters:
group- to update.attributeName- name of attribute to remove.- Throws:
GroupNotFoundException- if thegroupcould not be foundOperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
removeAllGroupAttributes
public void removeAllGroupAttributes(Group group) throws GroupNotFoundException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceRemoves all group attributes.- Specified by:
removeAllGroupAttributesin interfaceCrowdService- Parameters:
group- to update.- Throws:
GroupNotFoundException- if thegroupcould not be foundOperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
removeGroup
public boolean removeGroup(Group group) throws OperationNotPermittedException, GroupNotFoundException, OperationFailedException Description copied from interface:CrowdServiceRemoves thegroupthat matches the suppliedname.- Specified by:
removeGroupin interfaceCrowdService- Parameters:
group- to remove- Returns:
true</tt> if the group was removed as a result of this call, <tt>falseif the group does not exist.- Throws:
OperationNotPermittedException- if the directory does not allow removal of this groupOperationFailedException- underlying directory implementation failed to execute the operation.GroupNotFoundException
-
addUserToGroup
public boolean addUserToGroup(User user, Group group) throws GroupNotFoundException, UserNotFoundException, OperationNotPermittedException, OperationFailedException Description copied from interface:CrowdServiceAdds a user as a member of a group. This means that all user members ofchildGroupwill appear as members ofparentGroupto querying applications.- Specified by:
addUserToGroupin interfaceCrowdService- Parameters:
user- The user that will become a member of thegroupgroup- The group that will gain a new member.- Returns:
true</tt> if the user was added to the group as a result of this call, <tt>falseif the user is already a member of the group.- Throws:
GroupNotFoundException- if thegroupcould not be foundUserNotFoundException- if theusercould not be foundOperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- underlying directory implementation failed to execute the operation.
-
addGroupToGroup
public boolean addGroupToGroup(Group childGroup, Group parentGroup) throws GroupNotFoundException, OperationNotPermittedException, InvalidMembershipException, OperationFailedException Description copied from interface:CrowdServiceAdds a group as a member of a parent group. Cyclic group membership are allowed (mainly because LDAP allows it) but not recommended. I.e. group A can have group B as its member and group B can have group A as its member at the same time.- Specified by:
addGroupToGroupin interfaceCrowdService- Parameters:
childGroup- The group that will become a member ofparentGroupparentGroup- The group that will gain a new member- Returns:
true</tt> if the child group was added to the parent group as a result of this call, <tt>falseif the group is already a member of the group.- Throws:
GroupNotFoundException- if any of the group could not be found. UseGroupNotFoundException.getGroupName()to find out which group wasn't foundOperationNotPermittedException- if the directory has been configured to not allow the operation to be performedInvalidMembershipException- If the relationship would cause a circular reference.OperationFailedException- underlying directory implementation failed to execute the operation.
-
removeUserFromGroup
public boolean removeUserFromGroup(User user, Group group) throws GroupNotFoundException, UserNotFoundException, OperationNotPermittedException, MembershipNotFoundException, OperationFailedException Description copied from interface:CrowdServiceRemoves a user as a member of a group.- Specified by:
removeUserFromGroupin interfaceCrowdService- Parameters:
user- The user that will be removed from thegroupgroup- The group that will lose the member.- Returns:
true</tt> if the user was removed from the group as a result of this call, <tt>falseif the user is not a member of the group.- Throws:
GroupNotFoundException- if thegroupcould not be foundUserNotFoundException- if theusercould not be foundOperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- if the operation failed for any other reasonMembershipNotFoundException
-
removeGroupFromGroup
public boolean removeGroupFromGroup(Group childGroup, Group parentGroup) throws GroupNotFoundException, OperationNotPermittedException, MembershipNotFoundException, OperationFailedException Description copied from interface:CrowdServiceRemoves a group as a member of a parent group.- Specified by:
removeGroupFromGroupin interfaceCrowdService- Parameters:
childGroup- The group that will be removed fromparentGroupparentGroup- The group that will lose the member.- Returns:
true</tt> if childGroup was removed from parentGroup as a result of this call, <tt>falseif childGroup is not a member of the parentGroup.- Throws:
GroupNotFoundException- if any of the groups could not be found. UseGroupNotFoundException.getGroupName()to find out which group wasn't foundOperationNotPermittedException- if the directory has been configured to not allow the operation to be performedOperationFailedException- if the operation failed for any other reasonMembershipNotFoundException
-
isUserDirectGroupMember
Description copied from interface:CrowdServiceDetermines if a user is a direct member of a group.- Specified by:
isUserDirectGroupMemberin interfaceCrowdService- Parameters:
user- the user for whom to check the group membershipgroup- the group theuseris believed to belong to- Returns:
trueif the user is a direct member of the group,falseotherwise (including if the user and/or group could not be found)- Throws:
OperationFailedException- underlying directory implementation failed to execute the operation.
-
isGroupDirectGroupMember
public boolean isGroupDirectGroupMember(Group childGroup, Group parentGroup) throws OperationFailedException Description copied from interface:CrowdServiceDetermines if a group is a direct member of another group.- Specified by:
isGroupDirectGroupMemberin interfaceCrowdService- Parameters:
childGroup- the group for which to check theparentGroupmembershipparentGroup- the group thechildGroupis believed to belong to- Returns:
trueif thechildGroupis a direct member of theparentGroup,falseotherwise (including if neither group could be found)- Throws:
OperationFailedException- underlying directory implementation failed to execute the operation.
-
getCapabilitiesForNewUsers
Description copied from interface:CrowdServiceGets details of the possible operations that can be performed onnew users.Those capabilities reflects a specific moment in time and are subject to change if any user directory is added, removed or re-ordered.
- Specified by:
getCapabilitiesForNewUsersin interfaceCrowdService- Returns:
- the capabilities a new user will have
- See Also:
-