/** * Returns whether the named query with the given name exists. * * @param em must not be {@literal null}. * @param queryName must not be {@literal null}. * @return */ private static boolean hasNamedQuery(EntityManager em, String queryName) { /* * See DATAJPA-617, we have to use a dedicated em for the lookups to avoid a * potential rollback of the running tx. */ EntityManager lookupEm = em.getEntityManagerFactory().createEntityManager(); try { lookupEm.createNamedQuery(queryName); return true; } catch (IllegalArgumentException e) { LOG.debug("Did not find named query {}", queryName); return false; } finally { lookupEm.close(); } }
@Test public void testEntityManagerFactory2() { EntityManager em = this.entityManagerFactory2.createEntityManager(); try { em.createQuery("select tb from TestBean"); fail("Should have thrown IllegalArgumentException"); } catch (IllegalArgumentException ex) { // expected } finally { em.close(); } }
@Test @SuppressWarnings("unchecked") public void testQueryNoPersons() { EntityManager em = entityManagerFactory.createEntityManager(); Query q = em.createQuery("select p from Person as p"); List<Person> people = q.getResultList(); assertEquals(0, people.size()); try { assertNull(q.getSingleResult()); fail("Should have thrown NoResultException"); } catch (NoResultException ex) { // expected } }
private void findByNameAndAgeWithOrClause() { EntityManager em; String query; Query q; List<StudentCouchDBDate> students; int count; em = emf.createEntityManager(); query = "Select s From StudentOracleNoSQLDate s where s.name = Kuldeep and s.age > " + getMinValue(short.class); q = em.createQuery(query); students = q.getResultList(); Assert.assertNotNull(students); Assert.assertEquals(1, students.size()); count = 0; for (StudentCouchDBDate student : students) { Assert.assertEquals(getMaxValue(Date.class), student.getId()); Assert.assertEquals(getMaxValue(short.class), student.getAge()); Assert.assertEquals("Kuldeep", student.getName()); count++; } Assert.assertEquals(1, count); em.close(); }
@Test public void testJpaEnvers() throws Exception { final ServiceReference serviceReference = bundleContext.getServiceReference( PersistenceProvider.class.getName() ); final PersistenceProvider persistenceProvider = (PersistenceProvider) bundleContext.getService( serviceReference ); final EntityManagerFactory emf = persistenceProvider.createEntityManagerFactory( "hibernate-osgi-test", null ); final Integer adpId; EntityManager em = emf.createEntityManager(); em.getTransaction().begin(); AuditedDataPoint adp = new AuditedDataPoint( "Chris" ); em.persist( adp ); em.getTransaction().commit(); adpId = adp.getId(); em.close(); em = emf.createEntityManager(); em.getTransaction().begin(); adp = em.find( AuditedDataPoint.class, adpId ); adp.setName( "Chris2" ); em.getTransaction().commit(); em.close(); em = emf.createEntityManager(); AuditReader ar = AuditReaderFactory.get( em ); assertEquals( 2, ar.getRevisions( AuditedDataPoint.class, adpId ).size() ); AuditedDataPoint rev1 = ar.find( AuditedDataPoint.class, adpId, 1 ); AuditedDataPoint rev2 = ar.find( AuditedDataPoint.class, adpId, 2 ); assertEquals( new AuditedDataPoint( adpId, "Chris" ), rev1 ); assertEquals( new AuditedDataPoint( adpId, "Chris2" ), rev2 ); em.close(); }
public void testFindById(boolean useSameEm) { EntityManager em = emf.createEntityManager(); StudentMongoCalendar studentMax = em.find(StudentMongoCalendar.class, getMaxValue(Calendar.class)); Assert.assertNotNull(studentMax); Assert.assertEquals(getMaxValue(short.class), studentMax.getAge()); Assert.assertEquals(getMaxValue(String.class), studentMax.getName()); em.close(); }
@SuppressWarnings("unchecked") public static ArrayList<ProcessInstanceInfo> retrieveProcessInstanceInfo(EntityManagerFactory emf) { JtaTransactionManager txm = new JtaTransactionManager(null, null, null); boolean txOwner = txm.begin(); EntityManager em = emf.createEntityManager(); ArrayList<ProcessInstanceInfo> procInstInfoList = new ArrayList<ProcessInstanceInfo>(); List<Object> mdList = em.createQuery("SELECT p FROM ProcessInstanceInfo p").getResultList(); for( Object resultObject : mdList ) { ProcessInstanceInfo procInstInfo = (ProcessInstanceInfo) resultObject; procInstInfoList.add(procInstInfo); logger.trace("> {}", procInstInfo); } txm.commit(txOwner); return procInstInfoList; }
/** * @param b */ private void testNativeQuery(boolean b) { String s = "Select * From " + "\"StudentUUID\""; EntityManager em = emf.createEntityManager(); Query q = em.createNativeQuery(s, StudentUUID.class); List<StudentUUID> results = q.getResultList(); Assert.assertNotNull(results); }
public void deleteCounter() { EntityManager em = emf.createEntityManager(); Counters counters = new Counters(); counters = em.find(Counters.class, id3); Assert.assertNotNull(counters); Assert.assertNotNull(counters.getCounter()); em.remove(counters); EntityManager em1 = emf.createEntityManager(); counters = em1.find(Counters.class, id3); Assert.assertNull(counters); em.close(); }
private void findByNameAndAgeWithOrClause() { EntityManager em; String query; Query q; List<StudentHBaseByteWrapper> students; int count; em = emf.createEntityManager(); query = "Select s From StudentHBaseByteWrapper s where s.name = Kuldeep and s.age > " + getPartialValue(short.class); q = em.createQuery(query); students = q.getResultList(); Assert.assertNotNull(students); Assert.assertEquals(1, students.size()); count = 0; for (StudentHBaseByteWrapper student : students) { Assert.assertEquals(getMaxValue(Byte.class), student.getId()); Assert.assertEquals(getMaxValue(short.class), student.getAge()); Assert.assertEquals("Kuldeep", student.getName()); count++; } Assert.assertEquals(1, count); em.close(); }
@Test public void deferredQueryWithResultList() { EntityManagerFactory emf = mock(EntityManagerFactory.class); EntityManager targetEm = mock(EntityManager.class); Query query = mock(Query.class); given(emf.createEntityManager()).willReturn(targetEm); given(targetEm.createQuery("x")).willReturn(query); given(targetEm.isOpen()).willReturn(true); EntityManager em = SharedEntityManagerCreator.createSharedEntityManager(emf); em.createQuery("x").getResultList(); verify(query).getResultList(); verify(targetEm).close(); }
@Test public void deferredQueryWithSingleResult() { EntityManagerFactory emf = mock(EntityManagerFactory.class); EntityManager targetEm = mock(EntityManager.class); Query query = mock(Query.class); given(emf.createEntityManager()).willReturn(targetEm); given(targetEm.createQuery("x")).willReturn(query); given(targetEm.isOpen()).willReturn(true); EntityManager em = SharedEntityManagerCreator.createSharedEntityManager(emf); em.createQuery("x").getSingleResult(); verify(query).getSingleResult(); verify(targetEm).close(); }
try { entityManager = properties == null ? factorySupplier.get().createEntityManager(): factorySupplier.get().createEntityManager(properties); function.beforeTransactionCompletion(); txn = entityManager.getTransaction(); function.afterTransactionCompletion(); if ( entityManager != null ) { entityManager.close();
public void testFindById(boolean useSameEm) { EntityManager em = emf.createEntityManager(); StudentHBaseCalendar studentMax = em.find(StudentHBaseCalendar.class, getMaxValue(Calendar.class)); Assert.assertNotNull(studentMax); Assert.assertEquals(getMaxValue(short.class), studentMax.getAge()); Assert.assertEquals(getMaxValue(String.class), studentMax.getName()); em.close(); }
/** * @param b */ private void testNativeQuery(boolean b) { String s = "Select * From " + "\"StudentOracleNoSQLUUID\""; EntityManager em = emf.createEntityManager(); Query q = em.createNativeQuery(s, StudentCouchDBUUID.class); List<StudentCouchDBUUID> results = q.getResultList(); Assert.assertNotNull(results); }
private void findByNameAndAgeWithOrClause() { EntityManager em; String query; Query q; List<StudentHBaseInt> students; int count; em = emf.createEntityManager(); query = "Select s From StudentHBaseInt s where s.name = Kuldeep and s.age > " + getPartialValue(short.class); q = em.createQuery(query); students = q.getResultList(); Assert.assertNotNull(students); Assert.assertEquals(1, students.size()); count = 0; for (StudentHBaseInt student : students) { Assert.assertEquals(getMaxValue(int.class), student.getId()); Assert.assertEquals(getMaxValue(short.class), student.getAge()); Assert.assertEquals("Kuldeep", student.getName()); count++; } Assert.assertEquals(1, count); em.close(); }
@Test @SuppressWarnings("unchecked") public void testEntityManagerProxyIsProxy() { EntityManager em = entityManagerFactory.createEntityManager(); assertTrue(Proxy.isProxyClass(em.getClass())); Query q = em.createQuery("select p from Person as p"); List<Person> people = q.getResultList(); assertNotNull(people); assertTrue("Should be open to start with", em.isOpen()); em.close(); assertFalse("Close should work on application managed EM", em.isOpen()); }
@Test public void deferredQueryWithUpdate() { EntityManagerFactory emf = mock(EntityManagerFactory.class); EntityManager targetEm = mock(EntityManager.class); Query query = mock(Query.class); given(emf.createEntityManager()).willReturn(targetEm); given(targetEm.createQuery("x")).willReturn(query); given(targetEm.isOpen()).willReturn(true); EntityManager em = SharedEntityManagerCreator.createSharedEntityManager(emf); em.createQuery("x").executeUpdate(); verify(query).executeUpdate(); verify(targetEm).close(); }
protected <R> R call(Function<EntityManager, R> function) { boolean transactionOwner = false; try { transactionOwner = txm.begin(); EntityManager em = emf.createEntityManager(); R result = function.apply(em); txm.commit( transactionOwner ); em.close(); return result; } catch (Exception e) { txm.rollback(transactionOwner); throw new RuntimeException( "Exception when persisting error information", e); } }
/** * Test find by id. * * @param useSameEm * the use same em */ public void testFindById(boolean useSameEm) { EntityManager em = emf.createEntityManager(); StudentHBaseCalendar studentMax = em.find(StudentHBaseCalendar.class, getMaxValue(Calendar.class)); Assert.assertNotNull(studentMax); Assert.assertEquals(getMaxValue(short.class), studentMax.getAge()); Assert.assertEquals(getMaxValue(String.class), studentMax.getName()); em.close(); }