EventOrganiserFacade.java 1.63 KB
package fi.insomnia.bortal.facade;

import java.util.List;

import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;

import fi.insomnia.bortal.model.EventOrganiser;
import fi.insomnia.bortal.model.EventOrganiser_;

@Stateless
@LocalBean
public class EventOrganiserFacade extends IntegerPkGenericFacade<EventOrganiser> {

	public EventOrganiserFacade() {

		super(EventOrganiser.class);
	}

	public EventOrganiser findByOrganisation(String organisation) {
		// @NamedQuery(name = "EventOrganiser.findByOrganisation", query =
		// "SELECT e FROM EventOrganiser e WHERE e.organisation = :organisation"),
		CriteriaBuilder cb = getEm().getCriteriaBuilder();
		CriteriaQuery<EventOrganiser> cq = cb.createQuery(EventOrganiser.class);
		Root<EventOrganiser> root = cq.from(EventOrganiser.class);
		cq.where(cb.equal(root.get(EventOrganiser_.organisation), organisation));

		return getSingleNullableResult(getEm().createQuery(cq));
	}

	public List<EventOrganiser> findAll()
	{
		CriteriaBuilder cb = getEm().getCriteriaBuilder();
		CriteriaQuery<EventOrganiser> cq = cb.createQuery(EventOrganiser.class);
		return getEm().createQuery(cq).getResultList();
	}
	//
	// public List<EventOrganiser> find(IUser user) {
	// CriteriaBuilder cb = getEm().getCriteriaBuilder();
	// CriteriaQuery<EventOrganiser> cq = cb.createQuery(EventOrganiser.class);
	// Root<EventOrganiser> root = cq.from(EventOrganiser.class);
	// cq.where(cb.equal(root.get(EventOrganiser_.admin), user));
	// return getEm().createQuery(cq).getResultList();
	//
	// }
}