Subversion Repositories bacoAlunos

Rev

Rev 1306 | Rev 1508 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package pt.estgp.estgweb.services.users;

import jomm.dao.impl.AbstractDao;
import org.apache.log4j.Logger;
import org.hibernate.criterion.Order;
import pt.estgp.estgweb.domain.Teacher;
import pt.estgp.estgweb.domain.User;
import pt.estgp.estgweb.domain.UserImpl;
import pt.estgp.estgweb.domain.dao.DaoFactory;
import pt.estgp.estgweb.domain.views.UserView;
import pt.estgp.estgweb.services.expceptions.ServiceException;
import pt.utl.ist.berserk.logic.serviceManager.IService;

import java.util.ArrayList;
import java.util.List;

/*
 * @author Goncalo Luiz gedl [AT] rnl [DOT] ist [DOT] utl [DOT] pt
 *
 *
 * Created at 17/Out/2003 , 23:45:24
 *
 */

/**
 * @author Jorge Machado
 *         <p/>
 *         <p/>
 *         Created at 17/Out/2003 , 23:45:24
 */

public class LoadUsersService implements IService
{
    private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(LoadUsersService.class);

    public List<UserView> run(1.5.0/docs/api/java/lang/Class.html">Class c) throws ServiceException
    {
        List<UserImpl> users = AbstractDao.getCurrentSession().createCriteria(c).addOrder(Order.asc("name")).list();
        List<UserView> userViews = new ArrayList<UserView>();
        for(UserImpl u :users)
        {
            UserView view = new UserView(u);
            userViews.add(view);
        }
        return userViews;
    }

    public List<UserView> loadRole(1.5.0/docs/api/java/lang/String.html">String role) throws ServiceException
    {
        List<User> users = DaoFactory.getUserDaoImpl().loadRoleUsers(role);
        if(users == null)
            return null;
        return UserView.getViews(users);
    }

    public List<UserView> loadRoleArea(1.5.0/docs/api/java/lang/String.html">String role, 1.5.0/docs/api/java/lang/String.html">String area) throws ServiceException
    {
        List<User> users = DaoFactory.getUserDaoImpl().loadRoleAreaUsers(role,area);
        if(users == null)
            return null;
        return UserView.getViews(users);
    }

    public List<UserView> loadTeachersWithUnits(1.5.0/docs/api/java/lang/String.html">String area) throws ServiceException
    {
        List<User> users = DaoFactory.getTeacherDaoImpl().loadByAreaWithUnitsInYear(area, DaoFactory.getConfigurationDaoImpl().getInterfaceImportYear());
        if(users == null)
            return null;
        return UserView.getViews(users);
    }

    public List<UserView> load(1.5.0/docs/api/java/lang/String.html">String role) throws ServiceException
    {
        List<User> users = DaoFactory.getUserDaoImpl().loadRoleUsers(role);
        if(users == null)
            return null;
        return UserView.getViews(users);
    }

    public List<UserView> loadTeachers() throws ServiceException
    {
        return run(Teacher.class);
    }


}