private static void copySelectList(Queryable q, List<QuerySelectable> select) { // Copy select list into query: QueryClass defaultClass = null; if (q instanceof QueryObjectPathExpression) { defaultClass = ((QueryObjectPathExpression) q).getDefaultClass(); } if ((select.size() == 1) && select.get(0).equals(defaultClass)) { // Don't add anything to the SELECT list - default is fine } else { for (QuerySelectable qs : select) { if (qs instanceof QueryObjectPathExpression) { QueryObjectPathExpression qope = (QueryObjectPathExpression) qs; if (qope.getSelect().size() > 1) { for (int i = 0; i < qope.getSelect().size(); i++) { q.addToSelect(new PathExpressionField(qope, i)); } } else { q.addToSelect(qope); } } else { q.addToSelect(qs); } } } }
private static void copySelectList(Queryable q, List<QuerySelectable> select) { // Copy select list into query: QueryClass defaultClass = null; if (q instanceof QueryObjectPathExpression) { defaultClass = ((QueryObjectPathExpression) q).getDefaultClass(); } if ((select.size() == 1) && select.get(0).equals(defaultClass)) { // Don't add anything to the SELECT list - default is fine } else { for (QuerySelectable qs : select) { if (qs instanceof QueryObjectPathExpression) { QueryObjectPathExpression qope = (QueryObjectPathExpression) qs; if (qope.getSelect().size() > 1) { for (int i = 0; i < qope.getSelect().size(); i++) { q.addToSelect(new PathExpressionField(qope, i)); } } else { q.addToSelect(qope); } } else { q.addToSelect(qs); } } } }
private static void addFlatSelect(List<QuerySelectable> toAdd, List<QuerySelectable> select, QuerySelectable defaultClass, QuerySelectable substitute) { if (select.isEmpty() && substitute != null) { toAdd.add(substitute); } else { for (QuerySelectable s : select) { while (s instanceof PathExpressionField) { PathExpressionField pef = (PathExpressionField) s; s = pef.getQope().getSelect().get(pef.getFieldNumber()); if (s == pef.getQope().getDefaultClass()) { s = pef.getQope(); } } if (s == defaultClass) { toAdd.add(substitute); } else if (s instanceof QueryCollectionPathExpression) { addFlatSelect(toAdd, ((QueryCollectionPathExpression) s).getSelect(), ((QueryCollectionPathExpression) s).getDefaultClass(), s); } else { toAdd.add(s); } } } } }
private static void addFlatSelect(List<QuerySelectable> toAdd, List<QuerySelectable> select, QuerySelectable defaultClass, QuerySelectable substitute) { if (select.isEmpty() && substitute != null) { toAdd.add(substitute); } else { for (QuerySelectable s : select) { while (s instanceof PathExpressionField) { PathExpressionField pef = (PathExpressionField) s; s = pef.getQope().getSelect().get(pef.getFieldNumber()); if (s == pef.getQope().getDefaultClass()) { s = pef.getQope(); } } if (s == defaultClass) { toAdd.add(substitute); } else if (s instanceof QueryCollectionPathExpression) { addFlatSelect(toAdd, ((QueryCollectionPathExpression) s).getSelect(), ((QueryCollectionPathExpression) s).getDefaultClass(), s); } else { toAdd.add(s); } } } } }
public static Query fieldPathExpression2() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); QueryObjectPathExpression qope2 = new QueryObjectPathExpression(qope1.getDefaultClass(), "company"); QueryObjectPathExpression qope3 = new QueryObjectPathExpression(qope2.getDefaultClass(), "address"); qope3.addToSelect(new QueryField(qope3.getDefaultClass(), "address")); qope2.addToSelect(qope3); qope1.addToSelect(qope2); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query fieldPathExpression2() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); QueryObjectPathExpression qope2 = new QueryObjectPathExpression(qope1.getDefaultClass(), "company"); QueryObjectPathExpression qope3 = new QueryObjectPathExpression(qope2.getDefaultClass(), "address"); qope3.addToSelect(new QueryField(qope3.getDefaultClass(), "address")); qope2.addToSelect(qope3); qope1.addToSelect(qope2); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query objectPathExpression4() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); QueryObjectPathExpression qope2 = new QueryObjectPathExpression(qope1.getDefaultClass(), "company"); qope2.addToSelect(new QueryObjectPathExpression(qope2.getDefaultClass(), "address")); qope1.addToSelect(qope2); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query objectPathExpression4() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); QueryObjectPathExpression qope2 = new QueryObjectPathExpression(qope1.getDefaultClass(), "company"); qope2.addToSelect(new QueryObjectPathExpression(qope2.getDefaultClass(), "address")); qope1.addToSelect(qope2); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query objectPathExpression5() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); QueryObjectPathExpression qope2 = new QueryObjectPathExpression(qope1.getDefaultClass(), "company"); qope2.addToSelect(qope2.getDefaultClass()); qope2.addToSelect(new QueryObjectPathExpression(qope2.getDefaultClass(), "address")); qope1.addToSelect(qope1.getDefaultClass()); qope1.addToSelect(new PathExpressionField(qope2, 0)); qope1.addToSelect(new PathExpressionField(qope2, 1)); q.addToSelect(new PathExpressionField(qope1, 0)); q.addToSelect(new PathExpressionField(qope1, 1)); q.addToSelect(new PathExpressionField(qope1, 2)); q.setDistinct(false); return q; }
public static Query objectPathExpression5() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); QueryObjectPathExpression qope2 = new QueryObjectPathExpression(qope1.getDefaultClass(), "company"); qope2.addToSelect(qope2.getDefaultClass()); qope2.addToSelect(new QueryObjectPathExpression(qope2.getDefaultClass(), "address")); qope1.addToSelect(qope1.getDefaultClass()); qope1.addToSelect(new PathExpressionField(qope2, 0)); qope1.addToSelect(new PathExpressionField(qope2, 1)); q.addToSelect(new PathExpressionField(qope1, 0)); q.addToSelect(new PathExpressionField(qope1, 1)); q.addToSelect(new PathExpressionField(qope1, 2)); q.setDistinct(false); return q; }
public static Query collectionPathExpression6() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Department.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope = new QueryObjectPathExpression(qc, "company"); qope.addToSelect(qope.getDefaultClass()); qope.addToSelect(new QueryCollectionPathExpression(qope.getDefaultClass(), "departments")); q.addToSelect(new PathExpressionField(qope, 0)); q.addToSelect(new PathExpressionField(qope, 1)); q.setDistinct(false); return q; }
public static Query collectionPathExpression6() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Department.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope = new QueryObjectPathExpression(qc, "company"); qope.addToSelect(qope.getDefaultClass()); qope.addToSelect(new QueryCollectionPathExpression(qope.getDefaultClass(), "departments")); q.addToSelect(new PathExpressionField(qope, 0)); q.addToSelect(new PathExpressionField(qope, 1)); q.setDistinct(false); return q; }
public static Query fieldPathExpression() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Company.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "CEO"); qope1.addToSelect(new QueryField(qope1.getDefaultClass(), "name")); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query collectionPathExpression2() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); qope1.addToSelect(new QueryCollectionPathExpression(qope1.getDefaultClass(), "employees")); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query objectPathExpression3() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); qope1.addToSelect(new QueryObjectPathExpression(qope1.getDefaultClass(), "company")); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query objectPathExpression3() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); qope1.addToSelect(new QueryObjectPathExpression(qope1.getDefaultClass(), "company")); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query collectionPathExpression2() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Employee.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "department"); qope1.addToSelect(new QueryCollectionPathExpression(qope1.getDefaultClass(), "employees")); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query fieldPathExpression() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Company.class); q.addFrom(qc); q.addToSelect(qc); QueryObjectPathExpression qope1 = new QueryObjectPathExpression(qc, "CEO"); qope1.addToSelect(new QueryField(qope1.getDefaultClass(), "name")); q.addToSelect(qope1); q.setDistinct(false); return q; }
public static Query multiColumnObjectInCollection() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Company.class); q.addFrom(qc); q.addToSelect(qc); QueryCollectionPathExpression qcpe = new QueryCollectionPathExpression(qc, "departments"); qcpe.addToSelect(qcpe.getDefaultClass()); QueryObjectPathExpression qope = new QueryObjectPathExpression(qcpe.getDefaultClass(), "company"); qope.addToSelect(qope.getDefaultClass()); qope.addToSelect(new QueryCollectionPathExpression(qope.getDefaultClass(), "contractors")); qcpe.addToSelect(new PathExpressionField(qope, 0)); qcpe.addToSelect(new PathExpressionField(qope, 1)); q.addToSelect(qcpe); q.setDistinct(false); return q; }
public static Query multiColumnObjectInCollection() throws Exception { Query q = new Query(); QueryClass qc = new QueryClass(Company.class); q.addFrom(qc); q.addToSelect(qc); QueryCollectionPathExpression qcpe = new QueryCollectionPathExpression(qc, "departments"); qcpe.addToSelect(qcpe.getDefaultClass()); QueryObjectPathExpression qope = new QueryObjectPathExpression(qcpe.getDefaultClass(), "company"); qope.addToSelect(qope.getDefaultClass()); qope.addToSelect(new QueryCollectionPathExpression(qope.getDefaultClass(), "contractors")); qcpe.addToSelect(new PathExpressionField(qope, 0)); qcpe.addToSelect(new PathExpressionField(qope, 1)); q.addToSelect(qcpe); q.setDistinct(false); return q; }