Advertisement
Guest User

Untitled

a guest
Jun 24th, 2016
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.16 KB | None | 0 0
  1. package spring.repository.social;
  2.  
  3. import org.springframework.social.connect.*;
  4. import org.springframework.stereotype.Component;
  5. import spring.domain.SocialUserConnection;
  6. import spring.repository.SocialUserConnectionRepository;
  7.  
  8. import java.util.List;
  9. import java.util.Set;
  10. import java.util.stream.Collectors;
  11.  
  12. @Component
  13. public class CustomSocialUsersConnectionRepository implements UsersConnectionRepository {
  14.  
  15.     private SocialUserConnectionRepository socialUserConnectionRepository;
  16.  
  17.     private ConnectionFactoryLocator connectionFactoryLocator;
  18.  
  19.     public CustomSocialUsersConnectionRepository() {;
  20.     }
  21.  
  22.     public CustomSocialUsersConnectionRepository(SocialUserConnectionRepository socialUserConnectionRepository, ConnectionFactoryLocator connectionFactoryLocator) {
  23.         this.socialUserConnectionRepository = socialUserConnectionRepository;
  24.         this.connectionFactoryLocator = connectionFactoryLocator;
  25.     }
  26.  
  27.     @Override
  28.     public List<String> findUserIdsWithConnection(Connection<?> connection) {
  29.         ConnectionKey key = connection.getKey();
  30.         List<SocialUserConnection> socialUserConnections =
  31.             socialUserConnectionRepository.findAllByProviderIdAndProviderUserId(key.getProviderId(), key.getProviderUserId());
  32.         return socialUserConnections.stream()
  33.             .map(SocialUserConnection::getUserId)
  34.             .collect(Collectors.toList());
  35.     };
  36.  
  37.     @Override
  38.     public Set<String> findUserIdsConnectedTo(String providerId, Set<String> providerUserIds) {
  39.         List<SocialUserConnection> socialUserConnections =
  40.             socialUserConnectionRepository.findAllByProviderIdAndProviderUserIdIn(providerId, providerUserIds);
  41.         return socialUserConnections.stream()
  42.             .map(SocialUserConnection::getUserId)
  43.             .collect(Collectors.toSet());
  44.     };
  45.  
  46.     @Override
  47.     public ConnectionRepository createConnectionRepository(String userId) {
  48.         if (userId == null) {
  49.             throw new IllegalArgumentException("userId cannot be null");
  50.         }
  51.         return new CustomSocialConnectionRepository(userId, socialUserConnectionRepository, connectionFactoryLocator);
  52.     };
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement