private KunderaQuery parseQuery(final String query) { KunderaQuery kunderaQuery = new KunderaQuery(query, kunderaMetadata); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); return kunderaQuery; }
kunderaQuery.postParsingInit(); m = kunderaQuery.getEntityMetadata();
private KunderaQuery parseQuery(final String query) { KunderaQuery kunderaQuery = new KunderaQuery(query, kunderaMetadata); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); return kunderaQuery; }
/** * Test with in clause. */ @Test public void testWithInClause() { final String query = "Select p from Person p where p.personName <> :name and p.age in('kk', 'dk', 'sk') "; KunderaQuery kunderaQuery = new KunderaQuery(query, kunderaMetadata); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); }
@Test public void testGroupByAndOrderBy() { try { String queryStr = "Select p from Person p where p.personId = :personId GROUP BY personId"; KunderaQuery kunderaQuery = new KunderaQuery(queryStr, kunderaMetadata); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); queryStr = "Select p from Person p where p.personId = :personId GROUP BY personId HAVING 1"; kunderaQuery = new KunderaQuery(queryStr, kunderaMetadata); queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); queryStr = "Select p from Person p where p.personId = :personId GROUP BY personId ORDER BY personName"; kunderaQuery = new KunderaQuery(queryStr, kunderaMetadata); queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); } catch (Exception e) { Assert.fail(e.getMessage()); } } }
KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit();
@Test public void testOnIndexParameter() { String query = "Select p from CassandraUUIDEntity p where p.uuidKey = ?1 and p.name= ?2"; KunderaQuery kunderaQuery = new KunderaQuery(query, ((EntityManagerFactoryImpl) emf).getKunderaMetadataInstance()); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter(1, "uuid1"); kunderaQuery.setParameter(2, "uuidname"); List<String> uuidList = new ArrayList<String>(); uuidList.add("uuid1"); List<String> nameList = new ArrayList<String>(); nameList.add("uuidname"); Object value = kunderaQuery.getClauseValue("?1"); Assert.assertNotNull(value); Assert.assertEquals(uuidList, value); value = kunderaQuery.getClauseValue("?2"); Assert.assertNotNull(value); Assert.assertEquals(nameList, value); Assert.assertEquals(2, kunderaQuery.getParameters().size()); Iterator<Parameter<?>> parameters = kunderaQuery.getParameters().iterator(); while (parameters.hasNext()) { Assert.assertTrue(kunderaQuery.isBound(parameters.next())); } }
KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter("name", "pname"); kunderaQuery.setParameter("age", 32);
@Test public void testOnNameParameter() { String query = "Select p from CassandraUUIDEntity p where p.uuidKey = :uuid and p.name= :name"; KunderaQuery kunderaQuery = new KunderaQuery(query, ((EntityManagerFactoryImpl) emf).getKunderaMetadataInstance()); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter("uuid", "uuid1"); kunderaQuery.setParameter("name", "uuidname"); Assert.assertEquals(2, kunderaQuery.getParameters().size()); Iterator<Parameter<?>> parameters = kunderaQuery.getParameters().iterator(); while (parameters.hasNext()) { Assert.assertTrue(kunderaQuery.isBound(parameters.next())); } List<String> uuidList = new ArrayList<String>(); uuidList.add("uuid1"); List<String> nameList = new ArrayList<String>(); nameList.add("uuidname"); Object value = kunderaQuery.getClauseValue(":uuid"); Assert.assertNotNull(value); Assert.assertEquals(uuidList, value); value = kunderaQuery.getClauseValue(":name"); Assert.assertNotNull(value); Assert.assertEquals(nameList, value); Assert.assertEquals(2, kunderaQuery.getParameters().size()); }
/** * Test invalid index parameter. */ @Test public void testInvalidIndexParameter() { String query = "Select p from Person p where p.personName = ?1 and p.age= ?2"; KunderaQuery kunderaQuery = new KunderaQuery(query, kunderaMetadata); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter(1, "pname"); kunderaQuery.setParameter(2, 32); try { kunderaQuery.getClauseValue("?3"); Assert.fail("Should be catch block"); } catch (IllegalArgumentException iaex) { Assert.assertEquals("parameter is not a parameter of the query", iaex.getMessage()); } }
/** * Test invalid name parameter. */ @Test public void testInvalidNameParameter() { String query = "Select p from Person p where p.personName = :name and p.age= :age"; KunderaQuery kunderaQuery = new KunderaQuery(query, kunderaMetadata); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter("name", "pname"); kunderaQuery.setParameter("age", 32); try { kunderaQuery.getClauseValue(":naame"); Assert.fail("Should be catch block"); } catch (IllegalArgumentException iaex) { Assert.assertEquals("parameter is not a parameter of the query", iaex.getMessage()); } }
@Test public void testInvalidIndexParameter() { String query = "Select p from CassandraUUIDEntity p where p.uuidKey = ?1 and p.name= ?2"; KunderaQuery kunderaQuery = new KunderaQuery(query, ((EntityManagerFactoryImpl) emf).getKunderaMetadataInstance()); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter(1, "uuid1"); kunderaQuery.setParameter(2, "uuidname"); try { kunderaQuery.getClauseValue("?3"); Assert.fail("Should be catch block"); } catch (IllegalArgumentException iaex) { Assert.assertEquals("parameter is not a parameter of the query", iaex.getMessage()); } }
@Test public void testInvalidNameParameter() { String query = "Select p from CassandraUUIDEntity p where p.uuidKey = :uuid and p.name= :name"; KunderaQuery kunderaQuery = new KunderaQuery(query, ((EntityManagerFactoryImpl) emf).getKunderaMetadataInstance()); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter("uuid", "uuid1"); kunderaQuery.setParameter("name", "uuidname"); try { kunderaQuery.getClauseValue(":naame"); Assert.fail("Should be catch block"); } catch (IllegalArgumentException iaex) { Assert.assertEquals("parameter is not a parameter of the query", iaex.getMessage()); } }
KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter(1, "pname"); kunderaQuery.setParameter(2, 32); queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter(1, 32); kunderaQuery.setParameter(2, 35);
KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); Assert.assertNotNull(kunderaQuery.getEntityClass()); Assert.assertEquals(Person.class, kunderaQuery.getEntityClass());
KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter("salaryList", new ArrayList<Double>() queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter("salaryList", new ArrayList<Double>()
KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter(1, 33); kunderaQuery.setParameter(2, "pname");
KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); Assert.assertNotNull(kunderaQuery.getEntityClass()); Assert.assertEquals(Person.class, kunderaQuery.getEntityClass()); queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); Assert.assertNotNull(kunderaQuery.getEntityClass()); Assert.assertEquals(Person.class, kunderaQuery.getEntityClass());
/** * Test with sub query in mid. */ @Test public void testWithSubQueryInMid() { String query = "Select p from Person p where p.personName <> :name and p.age IN :ageList" + " and (p.personId = :personId) and p.salary NOT IN :salaryList"; KunderaQuery kunderaQuery = new KunderaQuery(query, kunderaMetadata); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter("name", "pname"); kunderaQuery.setParameter("ageList", new ArrayList<Integer>() { { add(20); add(21); } }); kunderaQuery.setParameter("salaryList", new ArrayList<Double>() { { add(2000D); add(3000D); } }); kunderaQuery.setParameter("personId", "personId"); assertSubQuery(kunderaQuery); }
/** * Test in not in not equals. */ @Test public void testInNotInNotEquals() { String query = "Select p from Person p where p.personName <> :name and p.age IN :ageList" + " and p.salary NOT IN :salaryList and (p.personId = :personId)"; KunderaQuery kunderaQuery = new KunderaQuery(query, kunderaMetadata); KunderaQueryParser queryParser = new KunderaQueryParser(kunderaQuery); queryParser.parse(); kunderaQuery.postParsingInit(); kunderaQuery.setParameter("name", "pname"); kunderaQuery.setParameter("ageList", new ArrayList<Integer>() { { add(20); add(21); } }); kunderaQuery.setParameter("salaryList", new ArrayList<Double>() { { add(2000D); add(3000D); } }); kunderaQuery.setParameter("personId", "personId"); assertSubQuery(kunderaQuery); }