From: <car...@us...> - 2011-10-18 15:39:12
|
Revision: 227 http://polepos.svn.sourceforge.net/polepos/?rev=227&view=rev Author: carlrosenberger Date: 2011-10-18 15:39:05 +0000 (Tue, 18 Oct 2011) Log Message: ----------- cr + pr: Using class.getSimpleName() in JPA queries. Modified Paths: -------------- trunk/polepos/src/org/polepos/teams/jpa/ComplexJpa.java trunk/polepos/src/org/polepos/teams/jpa/FlatObjectJpa.java trunk/polepos/src/org/polepos/teams/jpa/InheritanceHierarchyJpa.java trunk/polepos/src/org/polepos/teams/jpa/JpaCar.java trunk/polepos/src/org/polepos/teams/jpa/JpaTeam.java trunk/polepos/src/org/polepos/teams/jpa/NestedListsJpa.java trunk/polepos/src/org/polepos/teams/jpa/data/JpaIndexedPilot.java Modified: trunk/polepos/src/org/polepos/teams/jpa/ComplexJpa.java =================================================================== --- trunk/polepos/src/org/polepos/teams/jpa/ComplexJpa.java 2011-10-18 12:22:46 UTC (rev 226) +++ trunk/polepos/src/org/polepos/teams/jpa/ComplexJpa.java 2011-10-18 15:39:05 UTC (rev 227) @@ -76,7 +76,7 @@ for (int run = 0; run < selectCount; run++) { String filter = "this.i2 = :param"; Query query = db().createQuery( - "SELECT this FROM " + ComplexHolder2.class.getName() + "SELECT this FROM " + ComplexHolder2.class.getSimpleName() + " this WHERE " + filter); query.setParameter("param", currentInt); Collection result = (Collection) query.getResultList(); Modified: trunk/polepos/src/org/polepos/teams/jpa/FlatObjectJpa.java =================================================================== --- trunk/polepos/src/org/polepos/teams/jpa/FlatObjectJpa.java 2011-10-18 12:22:46 UTC (rev 226) +++ trunk/polepos/src/org/polepos/teams/jpa/FlatObjectJpa.java 2011-10-18 15:39:05 UTC (rev 227) @@ -53,7 +53,7 @@ String filter = "this._string = :param"; while (hasMoreTestIds()) { Query query = db().createQuery( - "SELECT this FROM " + JpaIndexedObject.class.getName() + "SELECT this FROM " + JpaIndexedObject.class.getSimpleName() + " this WHERE " + filter); doQuery(query, IndexedObject.queryString(nextTestId())); } @@ -66,7 +66,7 @@ String filter = "this._int = :param"; while (hasMoreTestIds()) { Query query = db().createQuery( - "SELECT this FROM " + JpaIndexedObject.class.getName() + "SELECT this FROM " + JpaIndexedObject.class.getSimpleName() + " this WHERE " + filter); doQuery(query, nextTestId()); } @@ -79,7 +79,7 @@ initializeTestId(setup().getUpdateCount()); while (hasMoreTestIds()) { Query query = db().createQuery( - "SELECT this FROM " + JpaIndexedObject.class.getName() + "SELECT this FROM " + JpaIndexedObject.class.getSimpleName() + " this WHERE " + filter); query.setParameter("param", nextTestId()); Collection result = (Collection) query.getResultList(); @@ -97,7 +97,7 @@ initializeTestId(setup().getUpdateCount()); while (hasMoreTestIds()) { Query query = db().createQuery( - "SELECT this FROM " + JpaIndexedObject.class.getName() + "SELECT this FROM " + JpaIndexedObject.class.getSimpleName() + " this WHERE " + filter); query.setParameter("param", nextTestId()); Collection result = (Collection) query.getResultList(); Modified: trunk/polepos/src/org/polepos/teams/jpa/InheritanceHierarchyJpa.java =================================================================== --- trunk/polepos/src/org/polepos/teams/jpa/InheritanceHierarchyJpa.java 2011-10-18 12:22:46 UTC (rev 226) +++ trunk/polepos/src/org/polepos/teams/jpa/InheritanceHierarchyJpa.java 2011-10-18 15:39:05 UTC (rev 227) @@ -57,7 +57,7 @@ String filter = "this.i2 = :param"; for (int i = 1; i <= count; i++) { Query query = db().createQuery( - "SELECT this FROM " + InheritanceHierarchy4.class.getName() + "SELECT this FROM " + InheritanceHierarchy4.class.getSimpleName() + " this WHERE " + filter); doQuery(query, i); } @@ -68,7 +68,7 @@ public void delete(){ begin(); Query query = db().createQuery( - "SELECT this FROM " + InheritanceHierarchy4.class.getName() + "SELECT this FROM " + InheritanceHierarchy4.class.getSimpleName() + " this"); Iterator it = query.getResultList().iterator(); while(it.hasNext()){ Modified: trunk/polepos/src/org/polepos/teams/jpa/JpaCar.java =================================================================== --- trunk/polepos/src/org/polepos/teams/jpa/JpaCar.java 2011-10-18 12:22:46 UTC (rev 226) +++ trunk/polepos/src/org/polepos/teams/jpa/JpaCar.java 2011-10-18 15:39:05 UTC (rev 227) @@ -35,7 +35,7 @@ */ public class JpaCar extends Car { - private EntityManagerFactory mFactory; + private transient EntityManagerFactory mFactory; private final String _dbName; private final String _name; @@ -58,17 +58,21 @@ } private void initialize() throws IOException { - - Properties props = new Properties(); - - try { - mFactory = Persistence.createEntityManagerFactory(_name+"/"+_dbName,props); - } catch (PersistenceException e) { - e.printStackTrace(); - } - + Properties props = new Properties(); + try { + mFactory = Persistence.createEntityManagerFactory(persistenceUnitName(),props); + } catch (PersistenceException e) { + e.printStackTrace(); + } } + private String persistenceUnitName() { + if(_dbName == null){ + return _name; + } + return _name+"/"+_dbName; + } + /** * */ Modified: trunk/polepos/src/org/polepos/teams/jpa/JpaTeam.java =================================================================== --- trunk/polepos/src/org/polepos/teams/jpa/JpaTeam.java 2011-10-18 12:22:46 UTC (rev 226) +++ trunk/polepos/src/org/polepos/teams/jpa/JpaTeam.java 2011-10-18 15:39:05 UTC (rev 227) @@ -22,7 +22,7 @@ import java.util.ArrayList; import java.util.List; -import javax.persistence.EntityManager; +import javax.persistence.*; import org.polepos.circuits.arraylists.ListHolder; import org.polepos.framework.Car; @@ -129,55 +129,38 @@ public void setUp() { for(int i = 0; i < mCars.length;i++){ - EntityManager em = ((JpaCar)mCars[i]).getEntityManager(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ ComplexHolder0.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ InheritanceHierarchy0.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ JpaIndexedObject.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ ListHolder.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ JPB0.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ JpaIndexedPilot.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ JpaPilot.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ JpaTree.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ JpaLightObject.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ JpaListHolder.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - - em.getTransaction().begin(); - em.createQuery("delete from "+ JPN1.class.getSimpleName() + " this ").executeUpdate(); - em.getTransaction().commit(); - + delete(em, ComplexHolder0.class); + delete(em, InheritanceHierarchy0.class); + delete(em, JpaIndexedObject.class); + delete(em, ListHolder.class); + delete(em, JPB0.class); + delete(em, JpaIndexedPilot.class); + delete(em, JpaPilot.class); + delete(em, JpaTree.class); + delete(em, JpaLightObject.class); + delete(em, JpaListHolder.class); + delete(em, JPN1.class); } + } + + private void delete(EntityManager em, Class clazz){ + em.getTransaction().begin(); + Query query = em.createQuery("select o from "+ clazz.getSimpleName() + " o"); + List resultList = query.getResultList(); + for (Object object : resultList) { + em.remove(object); + } + em.getTransaction().commit(); + // delete queries don't work in VOD JPA yet. Use the following when they are implemented: + +// em.getTransaction().begin(); +// em.createQuery("delete from "+ clazz.getSimpleName() + " this ").executeUpdate(); +// em.getTransaction().commit(); + + } + } Modified: trunk/polepos/src/org/polepos/teams/jpa/NestedListsJpa.java =================================================================== --- trunk/polepos/src/org/polepos/teams/jpa/NestedListsJpa.java 2011-10-18 12:22:46 UTC (rev 226) +++ trunk/polepos/src/org/polepos/teams/jpa/NestedListsJpa.java 2011-10-18 15:39:05 UTC (rev 227) @@ -57,7 +57,7 @@ String filter = " this._name = '" + ListHolder.ROOT_NAME + "'"; Query query = db().createQuery( - "SELECT this FROM " + ListHolder.class.getName() + "SELECT this FROM " + ListHolder.class.getSimpleName() + " this WHERE " + filter); Collection<ListHolder> result = (Collection<ListHolder>)query.getResultList(); if(result.size() != 1){ Modified: trunk/polepos/src/org/polepos/teams/jpa/data/JpaIndexedPilot.java =================================================================== --- trunk/polepos/src/org/polepos/teams/jpa/data/JpaIndexedPilot.java 2011-10-18 12:22:46 UTC (rev 226) +++ trunk/polepos/src/org/polepos/teams/jpa/data/JpaIndexedPilot.java 2011-10-18 15:39:05 UTC (rev 227) @@ -19,14 +19,12 @@ package org.polepos.teams.jpa.data; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; +import javax.persistence.*; -import org.apache.openjpa.persistence.jdbc.Index; -import org.polepos.framework.CheckSummable; +import org.apache.openjpa.persistence.jdbc.*; +import org.polepos.framework.*; + /** * @author Christian Ernst */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |