Repository: cayenne Updated Branches: refs/heads/master 7e36c932c -> d791b5193
CAY-1959 Chainable API for SelectQuery * changing 'exp' to 'where' per discusion on dev Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/d791b519 Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/d791b519 Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/d791b519 Branch: refs/heads/master Commit: d791b51939a77ce3832883917f49d1190d1648e0 Parents: 7e36c93 Author: aadamchik <[email protected]> Authored: Sat Nov 22 14:09:26 2014 +0300 Committer: aadamchik <[email protected]> Committed: Sat Nov 22 14:09:34 2014 +0300 ---------------------------------------------------------------------- .../org/apache/cayenne/query/ObjectSelect.java | 47 ++++++++-------- .../apache/cayenne/query/ObjectSelectTest.java | 56 ++++++++++---------- .../cayenne/query/ObjectSelect_CompileIT.java | 2 +- .../cayenne/query/ObjectSelect_RunIT.java | 4 +- 4 files changed, 56 insertions(+), 53 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cayenne/blob/d791b519/cayenne-server/src/main/java/org/apache/cayenne/query/ObjectSelect.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/main/java/org/apache/cayenne/query/ObjectSelect.java b/cayenne-server/src/main/java/org/apache/cayenne/query/ObjectSelect.java index 7618bcc..b6395dc 100644 --- a/cayenne-server/src/main/java/org/apache/cayenne/query/ObjectSelect.java +++ b/cayenne-server/src/main/java/org/apache/cayenne/query/ObjectSelect.java @@ -48,7 +48,7 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { private Class<?> entityType; private String entityName; private String dbEntityName; - private Expression exp; + private Expression where; private Collection<Ordering> orderings; private PrefetchTreeNode prefetches; private int limit; @@ -70,7 +70,7 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { * and uses provided expression for its qualifier. */ public static <T> ObjectSelect<T> query(Class<T> entityType, Expression expression) { - return new ObjectSelect<T>().entityType(entityType).exp(expression); + return new ObjectSelect<T>().entityType(entityType).where(expression); } /** @@ -78,7 +78,7 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { * and uses provided expression for its qualifier. */ public static <T> ObjectSelect<T> query(Class<T> entityType, Expression expression, List<Ordering> orderings) { - return new ObjectSelect<T>().entityType(entityType).exp(expression).orderBy(orderings); + return new ObjectSelect<T>().entityType(entityType).where(expression).orderBy(orderings); } /** @@ -95,7 +95,7 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { * qualifier. */ public static ObjectSelect<DataRow> dataRowQuery(Class<?> entityType, Expression expression) { - return query(entityType).fetchDataRows().exp(expression); + return query(entityType).fetchDataRows().where(expression); } /** @@ -124,7 +124,7 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { * @return this object */ public static ObjectSelect<DataRow> dbQuery(String dbEntityName, Expression expression) { - return new ObjectSelect<Object>().fetchDataRows().dbEntityName(dbEntityName).exp(expression); + return new ObjectSelect<Object>().fetchDataRows().dbEntityName(dbEntityName).where(expression); } protected ObjectSelect() { @@ -163,7 +163,7 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { } replacement.setFetchingDataRows(fetchingDataRows); - replacement.setQualifier(exp); + replacement.setQualifier(where); replacement.addOrderings(orderings); replacement.setPrefetchTree(prefetches); replacement.setCacheStrategy(cacheStrategy); @@ -232,8 +232,8 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { * * @return this object */ - public ObjectSelect<T> exp(Expression expression) { - this.exp = expression; + public ObjectSelect<T> where(Expression expression) { + this.where = expression; return this; } @@ -243,13 +243,13 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { * * @return this object */ - public ObjectSelect<T> exp(String expressionString, Object... parameters) { - this.exp = ExpressionFactory.exp(expressionString, parameters); + public ObjectSelect<T> where(String expressionString, Object... parameters) { + this.where = ExpressionFactory.exp(expressionString, parameters); return this; } /** - * AND's provided expressions to the existing qualifier expression. + * AND's provided expressions to the existing WHERE clause expression. * * @return this object */ @@ -262,7 +262,7 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { } /** - * AND's provided expressions to the existing qualifier expression. + * AND's provided expressions to the existing WHERE clause expression. * * @return this object */ @@ -274,20 +274,20 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { Collection<Expression> all; - if (exp != null) { + if (where != null) { all = new ArrayList<Expression>(expressions.size() + 1); - all.add(exp); + all.add(where); all.addAll(expressions); } else { all = expressions; } - exp = ExpressionFactory.and(all); + where = ExpressionFactory.and(all); return this; } /** - * OR's provided expressions to the existing qualifier expression. + * OR's provided expressions to the existing WHERE clause expression. * * @return this object */ @@ -300,7 +300,7 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { } /** - * OR's provided expressions to the existing qualifier expression. + * OR's provided expressions to the existing WHERE clause expression. * * @return this object */ @@ -311,15 +311,15 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { Collection<Expression> all; - if (exp != null) { + if (where != null) { all = new ArrayList<Expression>(expressions.size() + 1); - all.add(exp); + all.add(where); all.addAll(expressions); } else { all = expressions; } - exp = ExpressionFactory.or(all); + where = ExpressionFactory.or(all); return this; } @@ -637,8 +637,11 @@ public class ObjectSelect<T> extends IndirectQuery implements Select<T> { return dbEntityName; } - public Expression getExp() { - return exp; + /** + * Returns a WHERE clause Expression of this query. + */ + public Expression getWhere() { + return where; } public Collection<Ordering> getOrderings() { http://git-wip-us.apache.org/repos/asf/cayenne/blob/d791b519/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelectTest.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelectTest.java b/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelectTest.java index e49d38b..9a3056e 100644 --- a/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelectTest.java +++ b/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelectTest.java @@ -54,7 +54,7 @@ public class ObjectSelectTest { public void testQuery_RootType() { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class); assertNotNull(q); - assertNull(q.getExp()); + assertNull(q.getWhere()); assertFalse(q.isFetchingDataRows()); assertEquals(Artist.class, q.getEntityType()); @@ -66,7 +66,7 @@ public class ObjectSelectTest { public void testQuery_RootType_WithQualifier() { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class, ExpressionFactory.matchExp("a", "A")); assertNotNull(q); - assertEquals("a = \"A\"", q.getExp().toString()); + assertEquals("a = \"A\"", q.getWhere().toString()); assertFalse(q.isFetchingDataRows()); assertEquals(Artist.class, q.getEntityType()); @@ -97,15 +97,15 @@ public class ObjectSelectTest { } @Test - public void testExp() { + public void testWhere() { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class); - q.exp(ExpressionFactory.matchExp("a", 3)); - assertEquals("a = 3", q.getExp().toString()); + q.where(ExpressionFactory.matchExp("a", 3)); + assertEquals("a = 3", q.getWhere().toString()); - q.exp(ExpressionFactory.matchExp("b", 4)); - assertEquals("b = 4", q.getExp().toString()); + q.where(ExpressionFactory.matchExp("b", 4)); + assertEquals("b = 4", q.getWhere().toString()); } @Test @@ -113,11 +113,11 @@ public class ObjectSelectTest { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class); - q.exp(ExpressionFactory.matchExp("a", 3)); - assertEquals("a = 3", q.getExp().toString()); + q.where(ExpressionFactory.matchExp("a", 3)); + assertEquals("a = 3", q.getWhere().toString()); q.and(ExpressionFactory.matchExp("b", 4), ExpressionFactory.greaterExp("c", 5)); - assertEquals("(a = 3) and (b = 4) and (c > 5)", q.getExp().toString()); + assertEquals("(a = 3) and (b = 4) and (c > 5)", q.getWhere().toString()); } @Test @@ -125,14 +125,14 @@ public class ObjectSelectTest { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class); - q.exp(ExpressionFactory.matchExp("a", 3)); - assertEquals("a = 3", q.getExp().toString()); + q.where(ExpressionFactory.matchExp("a", 3)); + assertEquals("a = 3", q.getWhere().toString()); Collection<Expression> exps = Arrays.asList(ExpressionFactory.matchExp("b", 4), ExpressionFactory.greaterExp("c", 5)); q.and(exps); - assertEquals("(a = 3) and (b = 4) and (c > 5)", q.getExp().toString()); + assertEquals("(a = 3) and (b = 4) and (c > 5)", q.getWhere().toString()); } @Test @@ -140,11 +140,11 @@ public class ObjectSelectTest { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class); - q.exp(ExpressionFactory.matchExp("a", 3)); - assertEquals("a = 3", q.getExp().toString()); + q.where(ExpressionFactory.matchExp("a", 3)); + assertEquals("a = 3", q.getWhere().toString()); q.and(); - assertEquals("a = 3", q.getExp().toString()); + assertEquals("a = 3", q.getWhere().toString()); } @Test @@ -152,11 +152,11 @@ public class ObjectSelectTest { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class); - q.exp(ExpressionFactory.matchExp("a", 3)); - assertEquals("a = 3", q.getExp().toString()); + q.where(ExpressionFactory.matchExp("a", 3)); + assertEquals("a = 3", q.getWhere().toString()); q.and(new Expression[0]); - assertEquals("a = 3", q.getExp().toString()); + assertEquals("a = 3", q.getWhere().toString()); } @Test @@ -164,11 +164,11 @@ public class ObjectSelectTest { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class); - q.exp(ExpressionFactory.matchExp("a", 3)); - assertEquals("a = 3", q.getExp().toString()); + q.where(ExpressionFactory.matchExp("a", 3)); + assertEquals("a = 3", q.getWhere().toString()); q.and(Collections.<Expression> emptyList()); - assertEquals("a = 3", q.getExp().toString()); + assertEquals("a = 3", q.getWhere().toString()); } @Test @@ -176,11 +176,11 @@ public class ObjectSelectTest { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class); - q.exp(ExpressionFactory.matchExp("a", 3)); - assertEquals("a = 3", q.getExp().toString()); + q.where(ExpressionFactory.matchExp("a", 3)); + assertEquals("a = 3", q.getWhere().toString()); q.or(ExpressionFactory.matchExp("b", 4), ExpressionFactory.greaterExp("c", 5)); - assertEquals("(a = 3) or (b = 4) or (c > 5)", q.getExp().toString()); + assertEquals("(a = 3) or (b = 4) or (c > 5)", q.getWhere().toString()); } @Test @@ -188,14 +188,14 @@ public class ObjectSelectTest { ObjectSelect<Artist> q = ObjectSelect.query(Artist.class); - q.exp(ExpressionFactory.matchExp("a", 3)); - assertEquals("a = 3", q.getExp().toString()); + q.where(ExpressionFactory.matchExp("a", 3)); + assertEquals("a = 3", q.getWhere().toString()); Collection<Expression> exps = Arrays.asList(ExpressionFactory.matchExp("b", 4), ExpressionFactory.greaterExp("c", 5)); q.or(exps); - assertEquals("(a = 3) or (b = 4) or (c > 5)", q.getExp().toString()); + assertEquals("(a = 3) or (b = 4) or (c > 5)", q.getWhere().toString()); } @Test http://git-wip-us.apache.org/repos/asf/cayenne/blob/d791b519/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java b/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java index 33fba9e..bc29e2e 100644 --- a/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java +++ b/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java @@ -74,7 +74,7 @@ public class ObjectSelect_CompileIT extends ServerCase { // add all possible attributes to the query and make sure they got // propagated - ObjectSelect<Artist> q = ObjectSelect.query(Artist.class).exp(Artist.ARTIST_NAME.eq("me")) + ObjectSelect<Artist> q = ObjectSelect.query(Artist.class).where(Artist.ARTIST_NAME.eq("me")) .orderBy(Artist.DATE_OF_BIRTH.asc(), Artist.ARTIST_NAME.desc()).prefetch(Artist.PAINTING_ARRAY.joint()) .localCache("cg2", "cg1").limit(46).offset(9).pageSize(6).statementFetchSize(789); http://git-wip-us.apache.org/repos/asf/cayenne/blob/d791b519/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_RunIT.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_RunIT.java b/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_RunIT.java index 3f037c8..194b94b 100644 --- a/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_RunIT.java +++ b/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_RunIT.java @@ -65,7 +65,7 @@ public class ObjectSelect_RunIT extends ServerCase { assertEquals(20, result.size()); assertThat(result.get(0), instanceOf(Artist.class)); - Artist a = ObjectSelect.query(Artist.class).exp(Artist.ARTIST_NAME.eq("artist14")).selectOne(context); + Artist a = ObjectSelect.query(Artist.class).where(Artist.ARTIST_NAME.eq("artist14")).selectOne(context); assertNotNull(a); assertEquals("artist14", a.getArtistName()); } @@ -79,7 +79,7 @@ public class ObjectSelect_RunIT extends ServerCase { assertEquals(20, result.size()); assertThat(result.get(0), instanceOf(DataRow.class)); - DataRow a = ObjectSelect.dataRowQuery(Artist.class).exp(Artist.ARTIST_NAME.eq("artist14")).selectOne(context); + DataRow a = ObjectSelect.dataRowQuery(Artist.class).where(Artist.ARTIST_NAME.eq("artist14")).selectOne(context); assertNotNull(a); assertEquals("artist14", a.get("ARTIST_NAME")); }
