package br.com.ufrj.msi2.netuno.modelo.servicos; import javax.ejb.Stateless; import javax.persistence.EntityManager; import javax.persistence.NoResultException; import javax.persistence.PersistenceContext; import javax.persistence.Query; import br.com.ufrj.msi2.netuno.modelo.entidades.CPF; import br.com.ufrj.msi2.netuno.modelo.entidades.Usuario; @Stateless public class UsuarioServiceImpl implements UsuarioService { private static final long serialVersionUID = -7087952795393582189L; @PersistenceContext EntityManager em; @Override public Usuario recuperarUsuario(String login, String senha) { Query query = em.createNamedQuery("Usuario.recuperarPorLoginESenha"); query.setParameter("login", login); query.setParameter("senha", senha); try { return (Usuario) query.getSingleResult(); } catch (NoResultException e) { return null; } } public Usuario recuperarUsuario(String login) { Query query = em.createNamedQuery("Usuario.recuperaPorLogin"); query.setParameter("login", login); try { return (Usuario) query.getSingleResult(); } catch (NoResultException e) { return null; } } public Usuario recuperarUsuario(CPF cpf) { Query query = em.createNamedQuery("Usuario.recuperaPorCPF"); query.setParameter("cpf", cpf.getCpf()); try { return (Usuario) query.getSingleResult(); } catch (NoResultException e) { return null; } } @Override public Usuario recuperarUsuario(Integer idUsuario) { // Recupera o usu�rio pela chave prim�ria. return em.find(Usuario.class, idUsuario); } public EntityManager getEm() { return em; } }