Advertisement
Guest User

Service

a guest
Feb 11th, 2016
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.60 KB | None | 0 0
  1. package com.quowl.quowl.service.signinup;
  2.  
  3. import com.quowl.quowl.domain.logic.user.ProfileInfo;
  4. import com.quowl.quowl.domain.logic.user.User;
  5. import com.quowl.quowl.repository.user.ProfileRepository;
  6. import com.quowl.quowl.repository.user.UserRepository;
  7. import com.quowl.quowl.utils.ExecutionStatus;
  8. import org.apache.commons.lang3.StringUtils;
  9. import org.apache.commons.validator.routines.EmailValidator;
  10. import org.slf4j.Logger;
  11. import org.slf4j.LoggerFactory;
  12. import org.springframework.security.crypto.password.PasswordEncoder;
  13. import org.springframework.stereotype.Service;
  14. import org.springframework.transaction.annotation.Transactional;
  15.  
  16. import javax.inject.Inject;
  17.  
  18. //Эта аннотация позволяет спрингу найти его и в дальнейшем использовать, а нам она говорит, что в тут вся логика.
  19. @Service
  20. public class RegistrationService {
  21.     private final Logger log = LoggerFactory.getLogger(RegistrationService.class);
  22.  
  23. /*Тут мы делаем инжект Репозиториев. О них отдельно ссылку скину и расскажу. Код ниже понятен без объяснений, так что дальше о Репозиториях. */
  24.     @Inject private UserRepository userRepository;
  25.     @Inject private ProfileRepository profileRepository;
  26.     @Inject private PasswordEncoder passwordEncoder;
  27.  
  28.     @Transactional
  29.     public String registerUser(String username, String password, String email) {
  30.         if (StringUtils.isBlank(username) || StringUtils.isBlank(password) || StringUtils.isBlank(email)) {
  31.             log.warn("User data empty or null");
  32.             return ExecutionStatus.User_data_empty.toString();
  33.         }
  34.         if (!isValidateEmail(email)) {
  35.             log.warn("Wrong email address");
  36.             return ExecutionStatus.Wrong_email_address.toString();
  37.         }
  38.         ProfileInfo profileInfo = new ProfileInfo();
  39.         profileInfo = profileRepository.save(profileInfo);
  40.  
  41.         User newUser = new User();
  42.         password = passwordEncoder.encode(password);
  43.         username = username.toLowerCase();
  44.         newUser.setPassword(password);
  45.         newUser.setNickname(username);
  46.         newUser.setEmail(email);
  47.         newUser.setProfileInfo(profileInfo);
  48.         userRepository.save(newUser);
  49.  
  50.         log.info("Registration new user completed successfully!");
  51.         return ExecutionStatus.OK.toString();
  52.     }
  53.  
  54.  
  55.     private boolean isValidateEmail(String email) {
  56.         return EmailValidator.getInstance().isValid(email);
  57.     }
  58.  
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement