Package es.ua.dccia.negocio

Source Code of es.ua.dccia.negocio.UsuarioBO

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package es.ua.dccia.negocio;

import es.ua.dccia.MueveteException;
import es.ua.dccia.datos.PersistenceManager;
import es.ua.dccia.datos.UsuarioDao;
import es.ua.dccia.dominio.Usuario;
import es.ua.dccia.rest.to.UsuarioTO;
import javax.persistence.EntityManager;

/**
*
* @author otto
*/
public class UsuarioBO {

    public Usuario getUsuario(String login) {
        EntityManager em = PersistenceManager.getInstance().createEntityManager();
        em.getTransaction().begin();
        UsuarioDao uDao = new UsuarioDao(em);
        Usuario usuario = uDao.find(login);
        //for (Peticion p: usuario.getPeticiones()) {
        //    p.getId();
        //}
        em.getTransaction().commit();
        em.close();
        return usuario;

    }

    public void registrar(Usuario u) {
        EntityManager em = PersistenceManager.getInstance().createEntityManager();
        try {
            em.getTransaction().begin();
            if (this.getUsuario(u.getLogin()) == null) {
                UsuarioDao uDao = new UsuarioDao(em);
                uDao.create(u);
                //copiar imagen de perfil por defecto con el login del usuario
                ImagenService.getInstance().copiaPerfilDefecto(u.getLogin());
            } else {
                throw new MueveteException("El usuario " + u.getLogin() + " ya existe");
            }
        } finally {
            em.getTransaction().commit();
            em.close();
        }
    }

    public void modificar(UsuarioTO uto) {
        EntityManager em = PersistenceManager.getInstance().createEntityManager();
        em.getTransaction().begin();
        Usuario encontrado = em.find(Usuario.class, uto.getLogin());
        copiarUsuario(uto, encontrado);
        em.getTransaction().commit();
        em.close();
    }
   
    private void copiarUsuario(UsuarioTO origen, Usuario destino) {
        String nombre = origen.getNombre();
        String apellidos = origen.getApellidos();
        String password = origen.getNewPassword();
        if (nombre!=null)
            destino.setNombre(nombre);
        if (apellidos!=null)
            destino.setApellidos(apellidos);
        if (password!=null)
            destino.setPassword(password);      
    }
}

TOP

Related Classes of es.ua.dccia.negocio.UsuarioBO

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.