UserDAO.java 1.03 KB
package fi.insomnia.intra.dao;

import java.util.Arrays;
import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.Query;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import fi.insomnia.intra.db.User;

public class UserDAO extends GenericDAO<User> {

    private static final Logger logger = LoggerFactory.getLogger(UserDAO.class);
    private static final String SORT = "nick";
    private static final List<String> FIELDS = Arrays.asList("nick", "name", "email", "address");

    public UserDAO(EntityManager em) {
	super(em);

    }

    protected UserDAO() {
	super(User.class);
    }

    @Override
    protected String getAllNamedQuery() {
	return "findAllUsers";
    }

    public long getAllCount() {
	Query q = getEntityManager().createNamedQuery("countAllUsers");
	return getAllCount(q);
    }

    protected long getAllCount(Query q) {
	Object ret = q.getSingleResult();

	long retL = 0;
	if (ret instanceof Long) {
	    retL = (Long) ret;
	}
	logger.info("Retcount: {}", retL);
	return retL;

    }

}