Package org.localify.auth
Class AccountMergingService
java.lang.Object
org.localify.auth.AccountMergingService
Service for handling account merging operations.
-
Constructor Summary
ConstructorsConstructorDescriptionAccountMergingService(AccountMergeTokenRepository accountMergeTokenRepository, UserRepository userRepository, UserSeedRepository userSeedRepository, UserCityRepository userCityRepository, UserFavoriteArtistRepository userFavoriteArtistRepository, UserFavoriteEventRepository userFavoriteEventRepository, UserFavoriteVenueRepository userFavoriteVenueRepository) Constructs a new AccountMergingService. -
Method Summary
Modifier and TypeMethodDescriptioncreateToken(User fromUser, User toUser) Creates a new account merge token.doMergeUsers(User fromUser, User toUser, boolean changeEmail) Merges two user accounts.getMergeableAccount(UUID userId, String authToken) Gets a mergeable account based on an auth token.mergeAccounts(UUID toUserId, AccountMergeRequest mergeRequest) Merges two user accounts based on a merge request.
-
Constructor Details
-
AccountMergingService
@Autowired public AccountMergingService(AccountMergeTokenRepository accountMergeTokenRepository, UserRepository userRepository, UserSeedRepository userSeedRepository, UserCityRepository userCityRepository, UserFavoriteArtistRepository userFavoriteArtistRepository, UserFavoriteEventRepository userFavoriteEventRepository, UserFavoriteVenueRepository userFavoriteVenueRepository) Constructs a new AccountMergingService.- Parameters:
accountMergeTokenRepository- The repository for account merge tokens.userRepository- The repository for users.userSeedRepository- The repository for user seed artists.userCityRepository- The repository for user cities.userFavoriteArtistRepository- The repository for user favorite artists.userFavoriteEventRepository- The repository for user favorite events.userFavoriteVenueRepository- The repository for user favorite venues.
-
-
Method Details
-
createToken
Creates a new account merge token.- Parameters:
fromUser- The user account to merge from.toUser- The user account to merge to.- Returns:
- The created account merge token.
-
doMergeUsers
Merges two user accounts.- Parameters:
fromUser- The user account to merge from.toUser- The user account to merge to.changeEmail- Whether to change the email of the target account.- Returns:
- The merged user account.
-
mergeAccounts
Merges two user accounts based on a merge request.- Parameters:
toUserId- The ID of the user account to merge to.mergeRequest- The account merge request.- Returns:
- The merged user account.
-
getMergeableAccount
Gets a mergeable account based on an auth token.- Parameters:
userId- The ID of the user.authToken- The auth token.- Returns:
- The mergeable account.
-