org.springframework.social.connect
Interface UsersConnectionRepository

All Known Implementing Classes:
JdbcUsersConnectionRepository

public interface UsersConnectionRepository

A data access interface for managing a global store of users connections to service providers. Provides data access operations that apply across multiple user records. Also acts as a factory for a user-specific ConnectionRepository.

See Also:
ConnectionRepository

Method Summary
 ConnectionRepository createConnectionRepository(java.lang.String userId)
          Create a single-user ConnectionRepository instance for the user assigned the given id.
 java.util.Set<java.lang.String> findUserIdsConnectedTo(java.lang.String providerId, java.util.Set<java.lang.String> providerUserIds)
          Find the ids of the users who are connected to the specific provider user accounts.
 java.lang.String findUserIdWithConnection(Connection<?> connection)
          Find the id of the single user that has the given Connection.
 

Method Detail

findUserIdWithConnection

java.lang.String findUserIdWithConnection(Connection<?> connection)
Find the id of the single user that has the given Connection. Used to support the ProviderSignIn scenario where the user id returned is used to sign a local application user in using his or her provider account. Returns null if there is not exactly one local user connected to the provider user. May never return null if this method implicitly creates a user account from the connection if no such user account already exists.

Parameters:
connection - the service provider connection resulting from the provider sign-in attempt

findUserIdsConnectedTo

java.util.Set<java.lang.String> findUserIdsConnectedTo(java.lang.String providerId,
                                                       java.util.Set<java.lang.String> providerUserIds)
Find the ids of the users who are connected to the specific provider user accounts.

Parameters:
providerId - the provider id, e.g. "facebook"
providerUserIds - the set of provider user ids e.g. ("125600", "131345", "54321").
Returns:
the set of user ids connected to those service provider users, or empty if none.

createConnectionRepository

ConnectionRepository createConnectionRepository(java.lang.String userId)
Create a single-user ConnectionRepository instance for the user assigned the given id. All operations on the returned repository instance are relative to the user.

Parameters:
userId - the id of the local user account.
Returns:
the ConnectionRepository, exposing a number of operations for accessing and updating the given user's provider connections.