package br.edu.uniritter.liquid.democracy.service.impl; import java.io.UnsupportedEncodingException; import java.security.NoSuchAlgorithmException; import br.com.caelum.vraptor.ioc.Component; import br.edu.uniritter.liquid.democracy.model.User; import br.edu.uniritter.liquid.democracy.repository.SecurityRepository; import br.edu.uniritter.liquid.democracy.service.SecurityService; import br.edu.uniritter.liquid.democracy.utils.SecurityUtils; @Component public class SecurityServiceImpl implements SecurityService { private final SecurityRepository repository; public SecurityServiceImpl(SecurityRepository repository) { this.repository = repository; } @Override public User authenticate(User user) { try { String cipherPassword = SecurityUtils.cipher(user.getPassword()); user.setPassword(cipherPassword); } catch (NoSuchAlgorithmException | UnsupportedEncodingException e) { e.printStackTrace(); return null; } return repository.authenticate(user); } @Override public void create(User user) { try { String cipherPassword = SecurityUtils.cipher(user.getPassword()); user.setPassword(cipherPassword); } catch (NoSuchAlgorithmException | UnsupportedEncodingException e) { e.printStackTrace(); } repository.create(user); } }