org.cloudfoundry.identity.uaa.scim.jdbc
Class JdbcScimGroupMembershipManager

java.lang.Object
  extended by org.cloudfoundry.identity.uaa.scim.jdbc.JdbcScimGroupMembershipManager
All Implemented Interfaces:
ScimGroupMembershipManager

public class JdbcScimGroupMembershipManager
extends Object
implements ScimGroupMembershipManager


Field Summary
static String ADD_MEMBER_SQL
           
static String DELETE_MEMBER_IN_GROUPS_SQL
           
static String DELETE_MEMBER_SQL
           
static String DELETE_MEMBERS_IN_GROUP_SQL
           
static String GET_GROUPS_BY_MEMBER_SQL
           
static String GET_MEMBER_SQl
           
static String GET_MEMBERS_SQL
           
static String GET_MEMBERS_WITH_AUTHORITY_SQL
           
static String MEMBERSHIP_FIELDS
           
static String MEMBERSHIP_TABLE
           
static String UPDATE_MEMBER_SQL
           
 
Constructor Summary
JdbcScimGroupMembershipManager(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate)
           
 
Method Summary
 ScimGroupMember addMember(String groupId, ScimGroupMember member)
          Add a member to a group
 Set<ScimGroup> getGroupsWithMember(String memberId, boolean transitive)
          Retrieve all groups that the given member belongs to
 ScimGroupMember getMemberById(String groupId, String memberId)
          Retrieve a particular member's membership details
 List<ScimGroupMember> getMembers(String groupId)
          Retrieve all members of a group
 List<ScimGroupMember> getMembers(String groupId, ScimGroupMember.Role permission)
          Retrieve members that have the specified authority on the group
 ScimGroupMember removeMemberById(String groupId, String memberId)
          Revoke membership of a member
 List<ScimGroupMember> removeMembersByGroupId(String groupId)
          Empty the group, i.e revoke the membership of ALL members of a given group
 Set<ScimGroup> removeMembersByMemberId(String memberId)
          Revoke membership of given member from ALL groups
 void setDefaultUserGroups(Set<String> groupNames)
           
 void setScimGroupProvisioning(ScimGroupProvisioning groupProvisioning)
           
 void setScimUserProvisioning(ScimUserProvisioning userProvisioning)
           
 ScimGroupMember updateMember(String groupId, ScimGroupMember member)
          Update a particular member's membership details
 List<ScimGroupMember> updateOrAddMembers(String groupId, List<ScimGroupMember> members)
          Replace the members of the given group with the supplied member-list
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MEMBERSHIP_FIELDS

public static final String MEMBERSHIP_FIELDS
See Also:
Constant Field Values

MEMBERSHIP_TABLE

public static final String MEMBERSHIP_TABLE
See Also:
Constant Field Values

ADD_MEMBER_SQL

public static final String ADD_MEMBER_SQL

UPDATE_MEMBER_SQL

public static final String UPDATE_MEMBER_SQL

GET_MEMBERS_SQL

public static final String GET_MEMBERS_SQL

GET_GROUPS_BY_MEMBER_SQL

public static final String GET_GROUPS_BY_MEMBER_SQL

GET_MEMBERS_WITH_AUTHORITY_SQL

public static final String GET_MEMBERS_WITH_AUTHORITY_SQL

GET_MEMBER_SQl

public static final String GET_MEMBER_SQl

DELETE_MEMBER_SQL

public static final String DELETE_MEMBER_SQL

DELETE_MEMBERS_IN_GROUP_SQL

public static final String DELETE_MEMBERS_IN_GROUP_SQL

DELETE_MEMBER_IN_GROUPS_SQL

public static final String DELETE_MEMBER_IN_GROUPS_SQL
Constructor Detail

JdbcScimGroupMembershipManager

public JdbcScimGroupMembershipManager(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate)
Method Detail

setDefaultUserGroups

public void setDefaultUserGroups(Set<String> groupNames)

setScimUserProvisioning

public void setScimUserProvisioning(ScimUserProvisioning userProvisioning)

setScimGroupProvisioning

public void setScimGroupProvisioning(ScimGroupProvisioning groupProvisioning)

addMember

public ScimGroupMember addMember(String groupId,
                                 ScimGroupMember member)
                          throws ScimResourceNotFoundException,
                                 MemberAlreadyExistsException
Description copied from interface: ScimGroupMembershipManager
Add a member to a group

Specified by:
addMember in interface ScimGroupMembershipManager
Parameters:
groupId - id of a valid group that already exists.
member - membership info for enrolling an existing scim object (user or group) in the group
Returns:
Throws:
ScimResourceNotFoundException
MemberAlreadyExistsException

getMembers

public List<ScimGroupMember> getMembers(String groupId)
                                 throws ScimResourceNotFoundException
Description copied from interface: ScimGroupMembershipManager
Retrieve all members of a group

Specified by:
getMembers in interface ScimGroupMembershipManager
Returns:
Throws:
ScimResourceNotFoundException

getGroupsWithMember

public Set<ScimGroup> getGroupsWithMember(String memberId,
                                          boolean transitive)
                                   throws ScimResourceNotFoundException
Description copied from interface: ScimGroupMembershipManager
Retrieve all groups that the given member belongs to

Specified by:
getGroupsWithMember in interface ScimGroupMembershipManager
transitive - true means indirect/transitive membership is also processed (nested groups)
Returns:
Throws:
ScimResourceNotFoundException

getMembers

public List<ScimGroupMember> getMembers(String groupId,
                                        ScimGroupMember.Role permission)
                                 throws ScimResourceNotFoundException
Description copied from interface: ScimGroupMembershipManager
Retrieve members that have the specified authority on the group

Specified by:
getMembers in interface ScimGroupMembershipManager
Returns:
Throws:
ScimResourceNotFoundException

getMemberById

public ScimGroupMember getMemberById(String groupId,
                                     String memberId)
                              throws ScimResourceNotFoundException,
                                     MemberNotFoundException
Description copied from interface: ScimGroupMembershipManager
Retrieve a particular member's membership details

Specified by:
getMemberById in interface ScimGroupMembershipManager
Returns:
Throws:
ScimResourceNotFoundException
MemberNotFoundException

updateMember

public ScimGroupMember updateMember(String groupId,
                                    ScimGroupMember member)
                             throws ScimResourceNotFoundException,
                                    MemberNotFoundException
Description copied from interface: ScimGroupMembershipManager
Update a particular member's membership details

Specified by:
updateMember in interface ScimGroupMembershipManager
Returns:
Throws:
ScimResourceNotFoundException
MemberNotFoundException

updateOrAddMembers

public List<ScimGroupMember> updateOrAddMembers(String groupId,
                                                List<ScimGroupMember> members)
                                         throws ScimResourceNotFoundException
Description copied from interface: ScimGroupMembershipManager
Replace the members of the given group with the supplied member-list

Specified by:
updateOrAddMembers in interface ScimGroupMembershipManager
Returns:
Throws:
ScimResourceNotFoundException

removeMemberById

public ScimGroupMember removeMemberById(String groupId,
                                        String memberId)
                                 throws ScimResourceNotFoundException,
                                        MemberNotFoundException
Description copied from interface: ScimGroupMembershipManager
Revoke membership of a member

Specified by:
removeMemberById in interface ScimGroupMembershipManager
Returns:
Throws:
ScimResourceNotFoundException
MemberNotFoundException

removeMembersByGroupId

public List<ScimGroupMember> removeMembersByGroupId(String groupId)
                                             throws ScimResourceNotFoundException
Description copied from interface: ScimGroupMembershipManager
Empty the group, i.e revoke the membership of ALL members of a given group

Specified by:
removeMembersByGroupId in interface ScimGroupMembershipManager
Returns:
Throws:
ScimResourceNotFoundException

removeMembersByMemberId

public Set<ScimGroup> removeMembersByMemberId(String memberId)
                                       throws ScimResourceNotFoundException
Description copied from interface: ScimGroupMembershipManager
Revoke membership of given member from ALL groups

Specified by:
removeMembersByMemberId in interface ScimGroupMembershipManager
Returns:
Throws:
ScimResourceNotFoundException


Copyright © 2013. All rights reserved.