EventFacade.java 1.39 KB
package fi.insomnia.bortal.facade;

import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.LockModeType;
import javax.persistence.PersistenceContext;
import javax.persistence.PersistenceUnit;
import javax.persistence.TypedQuery;

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

import fi.insomnia.bortal.model.LanEvent;

@Stateless
@LocalBean
public class EventFacade extends GenericFacade<Integer, LanEvent> {

    private static final Logger logger = LoggerFactory.getLogger(EventFacade.class);
    @PersistenceContext
    private EntityManager em;

    @PersistenceUnit
    private EntityManagerFactory emf;

    public EventFacade() {
        super(LanEvent.class);
    }

    protected EntityManager getEm() {
        return em;
    }

    public LanEvent findByHostname(String hostname) {
        logger.debug("finding LanEvent with hostname {}", hostname);
        TypedQuery<LanEvent> q = em.createNamedQuery("LanEvent.findByReferer", LanEvent.class);
        q.setParameter("referer", hostname);
        return this.getSingleNullableResult(q);

    }

    public LanEvent findByName(String name) {
        TypedQuery<LanEvent> q = em.createNamedQuery("LanEvent.findByName", LanEvent.class);
        q.setParameter("name", name);
        return this.getSingleNullableResult(q);
    }

  
}