Commit 1a267e23 by Tuomas Riihimäki Committed by Juho Juopperi

Puljattu facadeista entitymanagerit superclassiin...

1 parent dedc6d80
Showing with 197 additions and 547 deletions
......@@ -4,15 +4,12 @@ import java.util.List;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.AccountEvent_;
import fi.insomnia.bortal.model.EventPk;
import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Product_;
import fi.insomnia.bortal.model.Role;
......@@ -21,20 +18,12 @@ import fi.insomnia.bortal.model.User;
@Stateless
@LocalBean
public class AccountEventFacade extends GenericFacade<EventPk, AccountEvent> {
@PersistenceContext
private EntityManager em;
public class AccountEventFacade extends EventChildGenericFacade<AccountEvent> {
public AccountEventFacade() {
super(AccountEvent.class);
}
@Override
protected EntityManager getEm() {
return em;
}
// @Override
// public void create(AccountEvent event) {
// user = userfacade
......@@ -43,7 +32,7 @@ public class AccountEventFacade extends GenericFacade<EventPk, AccountEvent> {
// }
public List<Role> findProvidedRoles(LanEvent event, User u) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Role> cq = cb.createQuery(Role.class);
Root<Role> root = cq.from(Role.class);
......@@ -58,6 +47,6 @@ public class AccountEventFacade extends GenericFacade<EventPk, AccountEvent> {
// Role.class);
// q.setParameter("eventid", event.getId());
// q.setParameter("user", u);
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
}
......@@ -4,8 +4,6 @@ import java.util.List;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.TypedQuery;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
......@@ -17,51 +15,43 @@ import fi.insomnia.bortal.model.ActionLogMessageResponse_;
@Stateless
@LocalBean
public class ActionLogFacade extends GenericFacade<Integer,ActionLogMessage> {
@PersistenceContext
private EntityManager em;
public class ActionLogFacade extends IntegerPkGenericFacade<ActionLogMessage> {
public ActionLogFacade() {
super(ActionLogMessage.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public List<ActionLogMessage> getAllSortedByTimestamp() {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<ActionLogMessage> cq = cb.createQuery(ActionLogMessage.class);
Root<ActionLogMessage> root = cq.from(ActionLogMessage.class);
cq.orderBy(cb.desc(root.get("time")));
TypedQuery<ActionLogMessage> tq = em.createQuery(cq);
TypedQuery<ActionLogMessage> tq = getEm().createQuery(cq);
tq.setMaxResults(10);
tq.setFirstResult(0);
return tq.getResultList();
}
public void saveToActionLog(ActionLogMessage alm) {
em.persist(alm);
em.flush();
getEm().persist(alm);
getEm().flush();
}
public List<ActionLogMessageResponse> getActionLogMessageResponses(ActionLogMessage alm) {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<ActionLogMessageResponse> cq = cb.createQuery(ActionLogMessageResponse.class);
Root<ActionLogMessageResponse> root = cq.from(ActionLogMessageResponse.class);
cq.where(cb.equal(root.get(ActionLogMessageResponse_.actionLogMessage), alm));
cq.orderBy(cb.asc(root.get("time")));
TypedQuery<ActionLogMessageResponse> tq = em.createQuery(cq);
TypedQuery<ActionLogMessageResponse> tq = getEm().createQuery(cq);
return tq.getResultList();
}
public void saveActionLogResponse(ActionLogMessageResponse almr) {
em.persist(almr);
em.flush();
getEm().persist(almr);
getEm().flush();
}
}
......@@ -3,8 +3,6 @@ package fi.insomnia.bortal.facade;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -21,8 +19,6 @@ import fi.insomnia.bortal.model.Bill_;
public class BillFacade extends EventChildGenericFacade<Bill> {
private static final Logger logger = LoggerFactory.getLogger(BillFacade.class);
@PersistenceContext
private EntityManager em;
@EJB
private EventBeanLocal eventbean;
......@@ -31,11 +27,6 @@ public class BillFacade extends EventChildGenericFacade<Bill> {
super(Bill.class);
}
@Override
protected EntityManager getEm() {
return em;
}
// @Override
// public void create(Bill entity) {
// super.create(entity);
......@@ -52,7 +43,7 @@ public class BillFacade extends EventChildGenericFacade<Bill> {
cq.where(cb.equal(root.get(Bill_.event), eventbean.getCurrentEvent()));
return getSingleNullableResult(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
}
......@@ -7,8 +7,6 @@ import java.util.Map;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -20,10 +18,6 @@ import fi.insomnia.bortal.model.LanEvent;
@Stateless
@LocalBean
public class BillLineFacade extends EventChildGenericFacade<BillLine> {
@PersistenceContext
private EntityManager em;
private static final Logger logger = LoggerFactory.getLogger(BillLineFacade.class);
public BillLineFacade() {
......@@ -49,9 +43,4 @@ public class BillLineFacade extends EventChildGenericFacade<BillLine> {
return retmap.values();
}
@Override
protected EntityManager getEm() {
return em;
}
}
......@@ -5,8 +5,6 @@ import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -17,10 +15,8 @@ import fi.insomnia.bortal.model.CardTemplate_;
@Stateless
@LocalBean
public class CardTemplateFacade extends GenericFacade<Integer, CardTemplate> {
public class CardTemplateFacade extends IntegerPkGenericFacade<CardTemplate> {
@PersistenceContext
private EntityManager em;
@EJB
private EventBeanLocal eventbean;
......@@ -28,18 +24,13 @@ public class CardTemplateFacade extends GenericFacade<Integer, CardTemplate> {
super(CardTemplate.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public List<CardTemplate> findAll()
{
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<CardTemplate> cq = cb.createQuery(CardTemplate.class);
Root<CardTemplate> root = cq.from(CardTemplate.class);
cq.where(cb.equal(root.get(CardTemplate_.event), eventbean.getCurrentEvent()));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
......
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.CompoEntry;
@Stateless
@LocalBean
public class CompoEntryFacade extends EventChildGenericFacade<CompoEntry> {
@PersistenceContext
private EntityManager em;
public CompoEntryFacade() {
super(CompoEntry.class);
}
protected EntityManager getEm() {
return em;
}
public CompoEntryFacade() {
super(CompoEntry.class);
}
}
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.CompoEntryFile;
@Stateless
@LocalBean
public class CompoEntryFileFacade extends EventChildGenericFacade<CompoEntryFile> {
@PersistenceContext
private EntityManager em;
public CompoEntryFileFacade() {
super(CompoEntryFile.class);
}
protected EntityManager getEm() {
return em;
}
public CompoEntryFileFacade() {
super(CompoEntryFile.class);
}
}
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.CompoEntryParticipant;
@Stateless
@LocalBean
public class CompoEntryParticipantFacade extends EventChildGenericFacade<CompoEntryParticipant> {
@PersistenceContext
private EntityManager em;
public CompoEntryParticipantFacade() {
super(CompoEntryParticipant.class);
}
protected EntityManager getEm() {
return em;
}
public CompoEntryParticipantFacade() {
super(CompoEntryParticipant.class);
}
}
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.Compo;
@Stateless
@LocalBean
public class CompoFacade extends EventChildGenericFacade<Compo> {
@PersistenceContext
private EntityManager em;
public CompoFacade() {
super(Compo.class);
}
protected EntityManager getEm() {
return em;
}
public CompoFacade() {
super(Compo.class);
}
}
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.NamedQuery;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.Discount;
@Stateless
@LocalBean
public class DiscountFacade extends EventChildGenericFacade<Discount> {
@PersistenceContext
private EntityManager em;
public DiscountFacade() {
super(Discount.class);
}
public DiscountFacade() {
super(Discount.class);
}
protected EntityManager getEm() {
return em;
}
}
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.DiscountInstance;
@Stateless
@LocalBean
public class DiscountInstanceFacade extends EventChildGenericFacade<DiscountInstance> {
@PersistenceContext
private EntityManager em;
public DiscountInstanceFacade() {
super(DiscountInstance.class);
}
protected EntityManager getEm() {
return em;
}
public DiscountInstanceFacade() {
super(DiscountInstance.class);
}
}
......@@ -2,6 +2,8 @@ package fi.insomnia.bortal.facade;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -19,6 +21,12 @@ import fi.insomnia.bortal.model.LanEvent;
* Session Bean implementation class GenericFacade
*/
public abstract class EventChildGenericFacade<T extends GenericEventChild> extends GenericFacade<EventPk, T> {
@PersistenceContext
private EntityManager em;
protected final EntityManager getEm() {
return em;
}
public EventChildGenericFacade(Class<T> entityClass) {
super(entityClass);
......
......@@ -2,8 +2,6 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -13,25 +11,15 @@ 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;
public class EventFacade extends IntegerPkGenericFacade<LanEvent> {
public EventFacade() {
super(LanEvent.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public LanEvent findByHostname(String hostname) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<LanEvent> cq = cb.createQuery(LanEvent.class);
Root<LanEvent> root = cq.from(LanEvent.class);
cq.where(cb.equal(root.get(LanEvent_.eventEnabled), true));
......@@ -39,7 +27,7 @@ public class EventFacade extends GenericFacade<Integer, LanEvent> {
// TypedQuery<LanEvent> q =
// em.createNamedQuery("LanEvent.findByReferer", LanEvent.class);
// q.setParameter("referer", hostname);
return getSingleNullableResult(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
......
......@@ -2,8 +2,6 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -14,22 +12,14 @@ import fi.insomnia.bortal.model.Place_;
@Stateless
@LocalBean
public class EventMapFacade extends GenericFacade<Integer, EventMap> {
@PersistenceContext
private EntityManager em;
public class EventMapFacade extends IntegerPkGenericFacade<EventMap> {
public EventMapFacade() {
super(EventMap.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public Long countAvailable(EventMap map) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Long> cq = cb.createQuery(Long.class);
Root<Place> root = cq.from(Place.class);
......@@ -41,7 +31,7 @@ public class EventMapFacade extends GenericFacade<Integer, EventMap> {
cb.isFalse(root.get(Place_.disabled))
);
return getSingleNullableResult(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
public Long countSelectable(EventMap map) {
......@@ -64,6 +54,6 @@ public class EventMapFacade extends GenericFacade<Integer, EventMap> {
cb.isFalse(root.get(Place_.disabled))
);
return getSingleNullableResult(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
}
......@@ -4,8 +4,6 @@ import java.util.List;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -15,35 +13,27 @@ import fi.insomnia.bortal.model.EventOrganiser_;
@Stateless
@LocalBean
public class EventOrganiserFacade extends GenericFacade<Integer, EventOrganiser> {
@PersistenceContext
private EntityManager em;
public class EventOrganiserFacade extends IntegerPkGenericFacade<EventOrganiser> {
public EventOrganiserFacade() {
super(EventOrganiser.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public EventOrganiser findByOrganisation(String organisation) {
// @NamedQuery(name = "EventOrganiser.findByOrganisation", query =
// "SELECT e FROM EventOrganiser e WHERE e.organisation = :organisation"),
CriteriaBuilder cb = em.getCriteriaBuilder();
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(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
public List<EventOrganiser> findAll()
{
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<EventOrganiser> cq = cb.createQuery(EventOrganiser.class);
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
}
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.FoodWave;
@Stateless
@LocalBean
public class FoodWaveFacade extends EventChildGenericFacade<FoodWave> {
@PersistenceContext
private EntityManager em;
public FoodWaveFacade() {
super(FoodWave.class);
}
protected EntityManager getEm() {
return em;
}
public FoodWaveFacade() {
super(FoodWave.class);
}
}
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.FoodWaveTemplate;
@Stateless
@LocalBean
public class FoodWaveTemplateFacade extends EventChildGenericFacade<FoodWaveTemplate> {
@PersistenceContext
private EntityManager em;
public FoodWaveTemplateFacade() {
super(FoodWaveTemplate.class);
}
protected EntityManager getEm() {
return em;
}
public FoodWaveTemplateFacade() {
super(FoodWaveTemplate.class);
}
}
......@@ -5,8 +5,6 @@ import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Path;
......@@ -29,8 +27,6 @@ import fi.insomnia.bortal.utilities.PasswordFunctions;
public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembership> {
private static final Logger logger = LoggerFactory.getLogger(GroupMembershipFacade.class);
@PersistenceContext
private EntityManager em;
@EJB
private EventBeanLocal eventbean;
......@@ -39,11 +35,6 @@ public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembershi
super(GroupMembership.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public String createInviteToken() {
String token = null;
GroupMembership gm = null;
......@@ -59,7 +50,7 @@ public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembershi
}
public GroupMembership findByToken(String token) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<GroupMembership> cq = cb.createQuery(GroupMembership.class);
Root<GroupMembership> root = cq.from(GroupMembership.class);
......@@ -71,11 +62,11 @@ public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembershi
// em.createQuery("Select gm from GroupMembership gm where gm.inviteToken = :token ",
// GroupMembership.class);
// q.setParameter("token", token);
return getSingleNullableResult(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
public List<GroupMembership> findMemberOrCreator(User user) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<GroupMembership> cq = cb.createQuery(GroupMembership.class);
Root<GroupMembership> root = cq.from(GroupMembership.class);
Path<PlaceGroup> pg = root.get(GroupMembership_.placeGroup);
......@@ -92,11 +83,11 @@ public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembershi
// GroupMembership.class);
// p.setParameter("eventid", event.getId());
// p.setParameter("user", user);
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
public List<GroupMembership> findMemberships(User user) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<GroupMembership> cq = cb.createQuery(GroupMembership.class);
Root<GroupMembership> root = cq.from(GroupMembership.class);
......@@ -105,7 +96,7 @@ public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembershi
cq.where(cb.equal(root.get(GroupMembership_.user), user),
cb.equal(pg.get(PlaceGroup_.event), eventbean.getCurrentEvent())
);
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
// TypedQuery<GroupMembership> p =
// em.createQuery("select gm from GroupMembership gm where gm.id.eventId = :eventid and gm.user = :user",
......
package fi.insomnia.bortal.facade;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.utilities.jpa.ModelInterface;
/**
* Session Bean implementation class GenericFacade
*/
public abstract class IntegerPkGenericFacade<T extends ModelInterface<Integer>> extends GenericFacade<Integer, T> {
@PersistenceContext
private EntityManager em;
protected final EntityManager getEm() {
return em;
}
public IntegerPkGenericFacade(Class<T> entityClass) {
super(entityClass);
......
package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import fi.insomnia.bortal.model.LanEventDomain;
@Stateless
@LocalBean
public class LanEventDomainFacade extends IntegerPkGenericFacade<LanEventDomain> {
public LanEventDomainFacade() {
super(LanEventDomain.class);
}
}
......@@ -2,25 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.Location;
@Stateless
@LocalBean
public class LocationFacade extends GenericFacade<Integer, Location> {
@PersistenceContext
private EntityManager em;
public class LocationFacade extends IntegerPkGenericFacade<Location> {
public LocationFacade() {
super(Location.class);
}
@Override
protected EntityManager getEm() {
return em;
}
}
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.LogEntry;
@Stateless
@LocalBean
public class LogEntryFacade extends GenericFacade<Integer,LogEntry> {
@PersistenceContext
private EntityManager em;
public LogEntryFacade() {
super(LogEntry.class);
}
public class LogEntryFacade extends IntegerPkGenericFacade<LogEntry> {
protected EntityManager getEm() {
return em;
}
public LogEntryFacade() {
super(LogEntry.class);
}
}
......@@ -2,8 +2,6 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.TypedQuery;
import fi.insomnia.bortal.beans.SecurityLogType;
......@@ -11,35 +9,28 @@ import fi.insomnia.bortal.model.LogEntryType;
@Stateless
@LocalBean
public class LogEntryTypeFacade extends GenericFacade<Integer, LogEntryType> {
public class LogEntryTypeFacade extends IntegerPkGenericFacade<LogEntryType> {
@PersistenceContext
private EntityManager em;
public LogEntryTypeFacade() {
super(LogEntryType.class);
}
public LogEntryTypeFacade() {
super(LogEntryType.class);
}
public LogEntryType findOrCreate(SecurityLogType type) {
protected EntityManager getEm() {
return em;
}
// Fetch log entry type
TypedQuery<LogEntryType> q = getEm().createNamedQuery("LogEntryType.findByName", LogEntryType.class);
q.setParameter("name", type.name());
public LogEntryType findOrCreate(SecurityLogType type) {
LogEntryType logEntryType = getSingleNullableResult(q);
// Fetch log entry type
TypedQuery<LogEntryType> q = em.createNamedQuery("LogEntryType.findByName", LogEntryType.class);
q.setParameter("name", type.name());
LogEntryType logEntryType = getSingleNullableResult(q);
// Might not exist yet
if (logEntryType == null) {
logEntryType = new LogEntryType();
logEntryType.setName(type.name());
getEm().persist(logEntryType);
}
// Might not exist yet
if (logEntryType == null) {
logEntryType = new LogEntryType();
logEntryType.setName(type.name());
em.persist(logEntryType);
}
return logEntryType;
}
return logEntryType;
}
}
......@@ -5,8 +5,6 @@ import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
......@@ -23,7 +21,7 @@ import fi.insomnia.bortal.model.Menuitem_;
@Stateless
@LocalBean
public class MenuNavigationFacade extends GenericFacade<Integer, MenuNavigation> {
public class MenuNavigationFacade extends IntegerPkGenericFacade<MenuNavigation> {
public MenuNavigationFacade() {
super(MenuNavigation.class);
......@@ -33,8 +31,6 @@ public class MenuNavigationFacade extends GenericFacade<Integer, MenuNavigation>
@EJB
private MenuitemFacade menuitemfacade;
@PersistenceContext
private EntityManager em;
@EJB
private EventBean eventbean;
......@@ -43,17 +39,12 @@ public class MenuNavigationFacade extends GenericFacade<Integer, MenuNavigation>
private static final Logger logger = LoggerFactory.getLogger(MenuNavigationFacade.class);
@Override
protected EntityManager getEm() {
return em;
}
public MenuNavigation find(String url) {
if (url == null || url.isEmpty())
{
return null;
}
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<MenuNavigation> cq = cb.createQuery(MenuNavigation.class);
Root<MenuNavigation> root = cq.from(MenuNavigation.class);
......@@ -62,7 +53,7 @@ public class MenuNavigationFacade extends GenericFacade<Integer, MenuNavigation>
cb.equal(root.get(MenuNavigation_.event), eventbean.getCurrentEvent())
);
return super.getSingleNullableResult(em.createQuery(cq));
return super.getSingleNullableResult(getEm().createQuery(cq));
}
......@@ -73,7 +64,7 @@ public class MenuNavigationFacade extends GenericFacade<Integer, MenuNavigation>
* @return //
*/
public List<MenuNavigation> findToplevels() {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<MenuNavigation> cq = cb.createQuery(MenuNavigation.class);
Root<MenuNavigation> root = cq.from(MenuNavigation.class);
......@@ -81,11 +72,11 @@ public class MenuNavigationFacade extends GenericFacade<Integer, MenuNavigation>
cb.equal(root.get(MenuNavigation_.event), eventbean.getCurrentEvent()),
cb.isTrue(root.get(MenuNavigation_.visible)));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
public void deleteAllDefaults() {
Query q = em.createQuery("delete from MenuNavigation where event = :event");
Query q = getEm().createQuery("delete from MenuNavigation where event = :event");
q.setParameter("event", eventbean.getCurrentEvent());
q.executeUpdate();
}
......
......@@ -2,8 +2,6 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -13,29 +11,21 @@ import fi.insomnia.bortal.model.Menuitem_;
@Stateless
@LocalBean
public class MenuitemFacade extends GenericFacade<Integer, Menuitem> {
public class MenuitemFacade extends IntegerPkGenericFacade<Menuitem> {
public MenuitemFacade() {
super(Menuitem.class);
}
@PersistenceContext
private EntityManager em;
@Override
protected EntityManager getEm() {
return em;
}
public Menuitem findOrCreate(String url) {
if (url == null || url.isEmpty()) {
return null;
}
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Menuitem> cq = cb.createQuery(Menuitem.class);
Root<Menuitem> root = cq.from(Menuitem.class);
cq.where(cb.equal(root.get(Menuitem_.url), url));
Menuitem ret = super.getSingleNullableResult(em.createQuery(cq));
Menuitem ret = super.getSingleNullableResult(getEm().createQuery(cq));
if (ret == null) {
ret = new Menuitem();
ret.setUrl(url);
......
......@@ -2,25 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.News;
@Stateless
@LocalBean
public class NewsFacade extends GenericFacade<Integer, News> {
@PersistenceContext
private EntityManager em;
public class NewsFacade extends IntegerPkGenericFacade<News> {
public NewsFacade() {
super(News.class);
}
@Override
protected EntityManager getEm() {
return em;
}
}
......@@ -5,8 +5,6 @@ import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -17,33 +15,25 @@ import fi.insomnia.bortal.model.NewsGroup_;
@Stateless
@LocalBean
public class NewsGroupFacade extends GenericFacade<Integer, NewsGroup> {
@PersistenceContext
private EntityManager em;
public class NewsGroupFacade extends IntegerPkGenericFacade<NewsGroup> {
public NewsGroupFacade() {
super(NewsGroup.class);
}
@Override
protected EntityManager getEm() {
return em;
}
@EJB
private EventBeanLocal eventbean;
public NewsGroup findByName(String name) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<NewsGroup> cq = cb.createQuery(NewsGroup.class);
Root<NewsGroup> root = cq.from(NewsGroup.class);
cq.where(cb.equal(root.get(NewsGroup_.event), eventbean.getCurrentEvent()),
cb.equal(root.get(NewsGroup_.name), name)
);
NewsGroup ret = getSingleNullableResult(em.createQuery(cq));
NewsGroup ret = getSingleNullableResult(getEm().createQuery(cq));
if (ret == null) {
ret = new NewsGroup(eventbean.getCurrentEvent());
ret.setName(name);
......@@ -53,11 +43,11 @@ public class NewsGroupFacade extends GenericFacade<Integer, NewsGroup> {
}
public List<NewsGroup> findNews() {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<NewsGroup> cq = cb.createQuery(NewsGroup.class);
Root<NewsGroup> root = cq.from(NewsGroup.class);
cq.where(cb.equal(root.get(NewsGroup_.event), eventbean.getCurrentEvent()));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
}
......@@ -2,24 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.PageContent;
@Stateless
@LocalBean
public class PageContentFacade extends GenericFacade<Integer, PageContent> {
@PersistenceContext
private EntityManager em;
public class PageContentFacade extends IntegerPkGenericFacade<PageContent> {
public PageContentFacade() {
super(PageContent.class);
}
@Override
protected EntityManager getEm() {
return em;
}
}
......@@ -5,8 +5,6 @@ import java.util.List;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.TypedQuery;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
......@@ -28,18 +26,11 @@ import fi.insomnia.bortal.model.User;
public class PlaceFacade extends IntegerPkGenericFacade<Place> {
private static final Logger logger = LoggerFactory.getLogger(PlaceFacade.class);
@PersistenceContext
private EntityManager em;
public PlaceFacade() {
super(Place.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public void timeoutPlaces() {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Place> cq = cb.createQuery(Place.class);
......@@ -83,7 +74,7 @@ public class PlaceFacade extends IntegerPkGenericFacade<Place> {
}
public int setBuyable(EventMap map, String like, boolean b) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Place> cq = cb.createQuery(Place.class);
Root<Place> root = cq.from(Place.class);
cq.where(
......@@ -91,7 +82,7 @@ public class PlaceFacade extends IntegerPkGenericFacade<Place> {
cb.equal(root.get(Place_.map), map)
);
List<Place> list = em.createQuery(cq).getResultList();
List<Place> list = getEm().createQuery(cq).getResultList();
for (Place p : list) {
p.setBuyable(b);
}
......@@ -115,7 +106,7 @@ public class PlaceFacade extends IntegerPkGenericFacade<Place> {
// return false;
// }
public Place find(EventMap map, int x, int y) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Place> cq = cb.createQuery(Place.class);
Root<Place> root = cq.from(Place.class);
Path<Integer> xObj = root.get(Place_.mapX);
......@@ -128,6 +119,6 @@ public class PlaceFacade extends IntegerPkGenericFacade<Place> {
cb.greaterThan(cb.sum(yObj, root.get(Place_.height)), y),
cb.isFalse(root.get(Place_.disabled))
);
return getSingleNullableResult(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
}
......@@ -2,8 +2,6 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.PlaceGroup;
......@@ -11,16 +9,8 @@ import fi.insomnia.bortal.model.PlaceGroup;
@LocalBean
public class PlaceGroupFacade extends IntegerPkGenericFacade<PlaceGroup> {
@PersistenceContext
private EntityManager em;
public PlaceGroupFacade() {
super(PlaceGroup.class);
}
@Override
protected EntityManager getEm() {
return em;
}
}
......@@ -2,24 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.PollAnswer;
@Stateless
@LocalBean
public class PollAnswerFacade extends GenericFacade<Integer, PollAnswer> {
@PersistenceContext
private EntityManager em;
public class PollAnswerFacade extends IntegerPkGenericFacade<PollAnswer> {
public PollAnswerFacade() {
super(PollAnswer.class);
}
@Override
protected EntityManager getEm() {
return em;
}
}
......@@ -5,8 +5,6 @@ import java.util.List;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -17,20 +15,12 @@ import fi.insomnia.bortal.model.Poll_;
@Stateless
@LocalBean
public class PollFacade extends GenericFacade<Integer, Poll> {
@PersistenceContext
private EntityManager em;
public class PollFacade extends IntegerPkGenericFacade<Poll> {
public PollFacade() {
super(Poll.class);
}
@Override
protected EntityManager getEm() {
return em;
}
// private boolean pollIsUsable(Poll poll) {
// Date now = new Date();
//
......@@ -62,7 +52,7 @@ public class PollFacade extends GenericFacade<Integer, Poll> {
public List<Poll> findAllUsable(LanEvent currentEvent) {
Date now = new Date();
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Poll> cq = cb.createQuery(Poll.class);
Root<Poll> root = cq.from(Poll.class);
......@@ -71,18 +61,18 @@ public class PollFacade extends GenericFacade<Integer, Poll> {
cb.greaterThan(root.get(Poll_.end), now)
);
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
public List<Poll> findAll(LanEvent currentEvent) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Poll> cq = cb.createQuery(Poll.class);
Root<Poll> root = cq.from(Poll.class);
cq.where(cb.equal(root.get(Poll_.event), currentEvent));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
}
......@@ -2,24 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.PollQuestion;
@Stateless
@LocalBean
public class PollQuestionFacade extends GenericFacade<Integer, PollQuestion> {
@PersistenceContext
private EntityManager em;
public class PollQuestionFacade extends IntegerPkGenericFacade<PollQuestion> {
public PollQuestionFacade() {
super(PollQuestion.class);
}
@Override
protected EntityManager getEm() {
return em;
}
}
......@@ -2,24 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.PossibleAnswer;
@Stateless
@LocalBean
public class PossibleAnswerFacade extends GenericFacade<Integer, PossibleAnswer> {
@PersistenceContext
private EntityManager em;
public class PossibleAnswerFacade extends IntegerPkGenericFacade<PossibleAnswer> {
public PossibleAnswerFacade() {
super(PossibleAnswer.class);
}
@Override
protected EntityManager getEm() {
return em;
}
}
......@@ -6,8 +6,6 @@ import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -20,20 +18,12 @@ import fi.insomnia.bortal.model.User;
@Stateless
@LocalBean
public class PrintedCardFacade extends GenericFacade<Integer, PrintedCard> {
@PersistenceContext
private EntityManager em;
public class PrintedCardFacade extends IntegerPkGenericFacade<PrintedCard> {
public PrintedCardFacade() {
super(PrintedCard.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public List<PrintedCard> findForUser(LanEvent event, User user) {
ArrayList<PrintedCard> retlist = new ArrayList<PrintedCard>();
......@@ -56,36 +46,36 @@ public class PrintedCardFacade extends GenericFacade<Integer, PrintedCard> {
public PrintedCard findByRfid(String uid) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<PrintedCard> cq = cb.createQuery(PrintedCard.class);
Root<PrintedCard> root = cq.from(PrintedCard.class);
cq.where(cb.equal(root.get(PrintedCard_.rfidUid), uid),
cb.equal(root.get(PrintedCard_.event), eventbean.getCurrentEvent()));
return getSingleNullableResult(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
public List<PrintedCard> findAllEnabled(LanEvent currentEvent) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<PrintedCard> cq = cb.createQuery(PrintedCard.class);
Root<PrintedCard> root = cq.from(PrintedCard.class);
cq.where(cb.isTrue(root.get(PrintedCard_.enabled)),
cb.equal(root.get(PrintedCard_.event), eventbean.getCurrentEvent()));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
public List<PrintedCard> getCards(User user) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<PrintedCard> cq = cb.createQuery(PrintedCard.class);
Root<PrintedCard> root = cq.from(PrintedCard.class);
cq.where(cb.equal(root.get(PrintedCard_.user), user),
cb.equal(root.get(PrintedCard_.event), eventbean.getCurrentEvent()));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
}
......@@ -6,8 +6,6 @@ import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -21,9 +19,6 @@ import fi.insomnia.bortal.model.Product_;
@LocalBean
public class ProductFacade extends IntegerPkGenericFacade<Product> {
@PersistenceContext
private EntityManager em;
@EJB
private EventBeanLocal eventbean;
......@@ -33,17 +28,12 @@ public class ProductFacade extends IntegerPkGenericFacade<Product> {
public List<Product> findAll()
{
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Product> cq = cb.createQuery(Product.class);
Root<Product> root = cq.from(Product.class);
cq.where(cb.equal(root.get(Product_.event), eventbean.getCurrentEvent()));
return em.createQuery(cq).getResultList();
}
return getEm().createQuery(cq).getResultList();
@Override
protected EntityManager getEm() {
return em;
}
public Product getCreditProduct() {
......@@ -51,25 +41,25 @@ public class ProductFacade extends IntegerPkGenericFacade<Product> {
}
public List<Product> findProductsByPrice(BigDecimal price) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Product> cq = cb.createQuery(Product.class);
Root<Product> root = cq.from(Product.class);
cq.where(cb.equal(root.get(Product_.event), eventbean.getCurrentEvent()),
cb.equal(root.get(Product_.price), price));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
public List<Product> findPrepaidProducts(LanEvent e) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Product> cq = cb.createQuery(Product.class);
Root<Product> root = cq.from(Product.class);
cq.where(cb.equal(root.get(Product_.event), eventbean.getCurrentEvent()),
cb.isTrue(root.get(Product_.prepaid)));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
}
......@@ -4,8 +4,6 @@ import java.util.List;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.TypedQuery;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
......@@ -17,20 +15,12 @@ import fi.insomnia.bortal.model.ReaderEvent_;
@Stateless
@LocalBean
public class ReaderEventFacade extends GenericFacade<Integer, ReaderEvent> {
@PersistenceContext
private EntityManager em;
public class ReaderEventFacade extends IntegerPkGenericFacade<ReaderEvent> {
public ReaderEventFacade() {
super(ReaderEvent.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public List<ReaderEvent> findLastEvents(Reader reader, int count) {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
......@@ -39,7 +29,7 @@ public class ReaderEventFacade extends GenericFacade<Integer, ReaderEvent> {
cq.where(cb.equal(root.get(ReaderEvent_.reader), reader));
cq.orderBy(cb.desc(root.get(ReaderEvent_.time)));
TypedQuery<ReaderEvent> q = em.createQuery(cq);
TypedQuery<ReaderEvent> q = getEm().createQuery(cq);
q.setMaxResults(count);
return q.getResultList();
}
......
......@@ -5,8 +5,6 @@ import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.TypedQuery;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
......@@ -19,10 +17,7 @@ import fi.insomnia.bortal.model.Reader_;
@Stateless
@LocalBean
public class ReaderFacade extends GenericFacade<Integer, Reader> {
@PersistenceContext
private EntityManager em;
public class ReaderFacade extends IntegerPkGenericFacade<Reader> {
@EJB
private EventBeanLocal eventbean;
......@@ -31,11 +26,6 @@ public class ReaderFacade extends GenericFacade<Integer, Reader> {
super(Reader.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public Reader findByIdent(LanEvent event, String reader) {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Reader> cq = cb.createQuery(Reader.class);
......@@ -75,6 +65,6 @@ public class ReaderFacade extends GenericFacade<Integer, Reader> {
CriteriaQuery<Reader> cq = cb.createQuery(Reader.class);
Root<Reader> root = cq.from(Reader.class);
cq.where(cb.equal(root.get(Reader_.event), eventbean.getCurrentEvent()));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
}
......@@ -4,8 +4,6 @@ import java.util.List;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -17,20 +15,12 @@ import fi.insomnia.bortal.model.User;
@Stateless
@LocalBean
public class RoleFacade extends GenericFacade<Integer, Role> {
@PersistenceContext
private EntityManager em;
public class RoleFacade extends IntegerPkGenericFacade<Role> {
public RoleFacade() {
super(Role.class);
}
@Override
protected EntityManager getEm() {
return em;
}
// public Role findByName(String name, LanEvent event) {
// TypedQuery<Role> q = em.createNamedQuery("Role.findByRoleName",
// Role.class);
......@@ -40,12 +30,12 @@ public class RoleFacade extends GenericFacade<Integer, Role> {
// }
public List<Role> findForUser(User user, LanEvent event) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Role> cq = cb.createQuery(Role.class);
Root<Role> root = cq.from(Role.class);
cq.where(cb.equal(root.get(Role_.event), event), cb.isMember(user, root.get(Role_.users)));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
public Role createRole(LanEvent event, String rolename) {
......@@ -56,12 +46,12 @@ public class RoleFacade extends GenericFacade<Integer, Role> {
}
public List<Role> findAll(LanEvent event) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Role> cq = cb.createQuery(Role.class);
Root<Role> root = cq.from(Role.class);
cq.where(cb.equal(root.get(Role_.event), event));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
}
......@@ -2,8 +2,6 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.salespoint.SalesEntity;
......@@ -12,18 +10,10 @@ import fi.insomnia.bortal.model.salespoint.SalesEntity;
*/
@Stateless
@LocalBean
public class SalesEntityFacade extends GenericFacade<Integer, SalesEntity>{
public class SalesEntityFacade extends IntegerPkGenericFacade<SalesEntity> {
@PersistenceContext
private EntityManager em;
public SalesEntityFacade() {
super(SalesEntity.class);
}
@Override
protected EntityManager getEm() {
return em;
public SalesEntityFacade() {
super(SalesEntity.class);
}
public SalesEntity findByCN(String cn) {
......
......@@ -4,8 +4,6 @@ import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.ListJoin;
......@@ -21,10 +19,7 @@ import fi.insomnia.bortal.model.SitePage_;
import fi.insomnia.bortal.model.User;
@Stateless
public class SitePageFacade extends GenericFacade<Integer, SitePage> {
@PersistenceContext
private EntityManager em;
public class SitePageFacade extends IntegerPkGenericFacade<SitePage> {
@EJB
private EventBeanLocal eventbean;
......@@ -33,13 +28,8 @@ public class SitePageFacade extends GenericFacade<Integer, SitePage> {
super(SitePage.class);
}
@Override
protected EntityManager getEm() {
return em;
}
public SitePage find(String siteName) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<SitePage> cq = cb.createQuery(SitePage.class);
Root<SitePage> root = cq.from(SitePage.class);
......@@ -47,11 +37,11 @@ public class SitePageFacade extends GenericFacade<Integer, SitePage> {
cb.equal(root.get(SitePage_.event), eventbean.getCurrentEvent())
);
return getSingleNullableResult(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
public List<SitePage> findForUser(User user, SitePage siteroot) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<SitePage> cq = cb.createQuery(SitePage.class);
Root<SitePage> root = cq.from(SitePage.class);
......@@ -75,13 +65,13 @@ public class SitePageFacade extends GenericFacade<Integer, SitePage> {
cb.equal(root.get(SitePage_.event), eventbean.getCurrentEvent())
);
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
public List<SitePage> findAll()
{
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<SitePage> cq = cb.createQuery(SitePage.class);
Root<SitePage> root = cq.from(SitePage.class);
......@@ -90,7 +80,7 @@ public class SitePageFacade extends GenericFacade<Integer, SitePage> {
cb.equal(root.get(SitePage_.event), eventbean.getCurrentEvent())
);
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
}
......@@ -6,8 +6,6 @@ import java.util.List;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
......@@ -24,7 +22,7 @@ import fi.insomnia.bortal.utilities.SearchResult;
@Stateless
@LocalBean
public class UserFacade extends GenericFacade<Integer, User> {
public class UserFacade extends IntegerPkGenericFacade<User> {
private static final Logger logger = LoggerFactory.getLogger(UserFacade.class);
......@@ -71,18 +69,10 @@ public class UserFacade extends GenericFacade<Integer, User> {
// id, nick, login, firstname, lastname
// }
@PersistenceContext
private EntityManager em;
public UserFacade() {
super(User.class);
}
@Override
protected EntityManager getEm() {
return em;
}
/**
* Find user by username.
*
......@@ -90,12 +80,12 @@ public class UserFacade extends GenericFacade<Integer, User> {
* @return
*/
public User findByLogin(String login) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<User> cq = cb.createQuery(User.class);
Root<User> root = cq.from(User.class);
cq.where(cb.equal(root.get(User_.login), login));
return getSingleNullableResult(em.createQuery(cq));
return getSingleNullableResult(getEm().createQuery(cq));
}
// public SearchResult<User> searchForName(String name) {
......@@ -154,23 +144,23 @@ public class UserFacade extends GenericFacade<Integer, User> {
// }
public List<User> findByEmail(String email) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<User> cq = cb.createQuery(User.class);
Root<User> root = cq.from(User.class);
cq.where(cb.equal(root.get(User_.email), email));
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
public void evict() {
em.getEntityManagerFactory().getCache().evictAll();
getEm().getEntityManagerFactory().getCache().evictAll();
}
public List<User> findAll()
{
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<User> cq = cb.createQuery(User.class);
return em.createQuery(cq).getResultList();
return getEm().createQuery(cq).getResultList();
}
......
......@@ -3,17 +3,12 @@ package fi.insomnia.bortal.facade;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.UserImage;
@Stateless
@LocalBean
public class UserImageFacade extends GenericFacade<Integer, UserImage> {
@PersistenceContext
private EntityManager em;
public class UserImageFacade extends IntegerPkGenericFacade<UserImage> {
@EJB
private UserFacade userfacade;
......@@ -22,10 +17,6 @@ public class UserImageFacade extends GenericFacade<Integer, UserImage> {
super(UserImage.class);
}
@Override
protected EntityManager getEm() {
return em;
}
// @Override
// public void create(UserImage entity)
// {
......
......@@ -2,23 +2,15 @@ package fi.insomnia.bortal.facade;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import fi.insomnia.bortal.model.Vote;
@Stateless
@LocalBean
public class VoteFacade extends EventChildGenericFacade<Vote> {
@PersistenceContext
private EntityManager em;
public VoteFacade() {
super(Vote.class);
}
protected EntityManager getEm() {
return em;
}
public VoteFacade() {
super(Vote.class);
}
}
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!