diff --git a/scaffold-metawidget-lib/src/main/java/org/metawidget/forge/persistence/PersistenceUtil.java b/scaffold-metawidget-lib/src/main/java/org/metawidget/forge/persistence/PersistenceUtil.java index d5ff02e29c..c5e07e5b4c 100644 --- a/scaffold-metawidget-lib/src/main/java/org/metawidget/forge/persistence/PersistenceUtil.java +++ b/scaffold-metawidget-lib/src/main/java/org/metawidget/forge/persistence/PersistenceUtil.java @@ -22,23 +22,26 @@ public class PersistenceUtil implements Serializable public int count(Class type) { - CriteriaQuery cq = getEntityManager().getCriteriaBuilder().createQuery(Long.class); + EntityManager em = getEntityManager(); + CriteriaQuery cq = em.getCriteriaBuilder().createQuery(Long.class); javax.persistence.criteria.Root rt = cq.from(type); - cq.select(getEntityManager().getCriteriaBuilder().count(rt)); - javax.persistence.Query q = getEntityManager().createQuery(cq); + cq.select(em.getCriteriaBuilder().count(rt)); + javax.persistence.Query q = em.createQuery(cq); return ((Long) q.getSingleResult()).intValue(); } protected void create(final T entity) { - getEntityManager().joinTransaction(); - getEntityManager().persist(entity); + EntityManager em = getEntityManager(); + em.joinTransaction(); + em.persist(entity); } protected void delete(final T entity) throws NoResultException { - getEntityManager().joinTransaction(); - getEntityManager().remove(entity); + EntityManager em = getEntityManager(); + em.joinTransaction(); + em.remove(entity); } protected T deleteById(final Class type, final Long id) throws NoResultException @@ -50,17 +53,19 @@ protected T deleteById(final Class type, final Long id) throws NoResultEx protected List findAll(final Class type) { - CriteriaQuery query = getEntityManager().getCriteriaBuilder().createQuery(type); + EntityManager em = getEntityManager(); + CriteriaQuery query = em.getCriteriaBuilder().createQuery(type); query.from(type); - return getEntityManager().createQuery(query).getResultList(); + return em.createQuery(query).getResultList(); } @SuppressWarnings("unchecked") public List findAll(Class type, int firstResult, int maxResults) { - CriteriaQuery cq = getEntityManager().getCriteriaBuilder().createQuery(type); + EntityManager em = getEntityManager(); + CriteriaQuery cq = em.getCriteriaBuilder().createQuery(type); cq.select(cq.from(type)); - javax.persistence.Query q = getEntityManager().createQuery(cq); + javax.persistence.Query q = em.createQuery(cq); q.setMaxResults(maxResults); q.setFirstResult(firstResult); return q.getResultList(); @@ -70,8 +75,10 @@ public List findAll(Class type, int firstResult, int maxResults) protected T findById(final Class type, final Long id) throws NoResultException { Class clazz = getObjectClass(type); - T result = (T) getEntityManager().find(clazz, id); - if (result == null) { + EntityManager em = getEntityManager(); + T result = (T) em.find(clazz, id); + if (result == null) + { throw new NoResultException("No object of type: " + type + " with ID: " + id); } return result; @@ -80,15 +87,18 @@ protected T findById(final Class type, final Long id) throws NoResultExce @SuppressWarnings("unchecked") protected List findByNamedQuery(final String namedQueryName) { - return getEntityManager().createNamedQuery(namedQueryName).getResultList(); + EntityManager em = getEntityManager(); + return em.createNamedQuery(namedQueryName).getResultList(); } @SuppressWarnings("unchecked") protected List findByNamedQuery(final String namedQueryName, final Object... params) { - Query query = getEntityManager().createNamedQuery(namedQueryName); + EntityManager em = getEntityManager(); + Query query = em.createNamedQuery(namedQueryName); int i = 1; - for (Object p : params) { + for (Object p : params) + { query.setParameter(i++, p); } return query.getResultList(); @@ -97,15 +107,18 @@ protected List findByNamedQuery(final String namedQueryName, final Object @SuppressWarnings("unchecked") protected T findUniqueByNamedQuery(final String namedQueryName) throws NoResultException { - return (T) getEntityManager().createNamedQuery(namedQueryName).getSingleResult(); + EntityManager em = getEntityManager(); + return (T) em.createNamedQuery(namedQueryName).getSingleResult(); } @SuppressWarnings("unchecked") protected T findUniqueByNamedQuery(final String namedQueryName, final Object... params) throws NoResultException { - Query query = getEntityManager().createNamedQuery(namedQueryName); + EntityManager em = getEntityManager(); + Query query = em.createNamedQuery(namedQueryName); int i = 1; - for (Object p : params) { + for (Object p : params) + { query.setParameter(i++, p); } return (T) query.getSingleResult(); @@ -119,13 +132,16 @@ protected EntityManager getEntityManager() protected Class getObjectClass(final Object type) throws IllegalArgumentException { Class clazz = null; - if (type == null) { + if (type == null) + { throw new IllegalArgumentException("Null has no type. You must pass an Object"); } - else if (type instanceof Class) { + else if (type instanceof Class) + { clazz = (Class) type; } - else { + else + { clazz = type.getClass(); } return clazz; @@ -138,7 +154,8 @@ protected void refresh(final T entity) protected void save(final T entity) { - getEntityManager().joinTransaction(); - getEntityManager().merge(entity); + EntityManager em = getEntityManager(); + em.joinTransaction(); + em.merge(entity); } }