From e4aa65a50717404e49159c0cceca3948eabdabff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Westk=C3=A4mper?= Date: Fri, 27 Apr 2012 12:15:06 +0300 Subject: [PATCH] #128 added support for ColQueryTemplates customization --- .../com/mysema/query/collections/ColQueryImpl.java | 9 +++++++++ .../mysema/query/collections/ColQueryTemplates.java | 2 +- .../com/mysema/query/collections/ColQueryTest.java | 10 ++++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/ColQueryImpl.java b/querydsl-collections/src/main/java/com/mysema/query/collections/ColQueryImpl.java index 262d05a62..7de16106c 100644 --- a/querydsl-collections/src/main/java/com/mysema/query/collections/ColQueryImpl.java +++ b/querydsl-collections/src/main/java/com/mysema/query/collections/ColQueryImpl.java @@ -31,6 +31,15 @@ public class ColQueryImpl extends AbstractColQuery implements ColQ super(new DefaultQueryMetadata(), QueryEngine.DEFAULT); } + /** + * Creates a new ColQueryImpl instance + * + * @param templates + */ + public ColQueryImpl(ColQueryTemplates templates) { + this(new DefaultQueryEngine(new DefaultEvaluatorFactory(ColQueryTemplates.DEFAULT))); + } + /** * Create a new ColQueryImpl instance * diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/ColQueryTemplates.java b/querydsl-collections/src/main/java/com/mysema/query/collections/ColQueryTemplates.java index 58ae2fcd6..7196fb593 100644 --- a/querydsl-collections/src/main/java/com/mysema/query/collections/ColQueryTemplates.java +++ b/querydsl-collections/src/main/java/com/mysema/query/collections/ColQueryTemplates.java @@ -23,7 +23,7 @@ import com.mysema.query.types.PathType; * * @author tiwe */ -public final class ColQueryTemplates extends JavaTemplates { +public class ColQueryTemplates extends JavaTemplates { public static final ColQueryTemplates DEFAULT = new ColQueryTemplates(); diff --git a/querydsl-collections/src/test/java/com/mysema/query/collections/ColQueryTest.java b/querydsl-collections/src/test/java/com/mysema/query/collections/ColQueryTest.java index c33e6a810..3be644533 100644 --- a/querydsl-collections/src/test/java/com/mysema/query/collections/ColQueryTest.java +++ b/querydsl-collections/src/test/java/com/mysema/query/collections/ColQueryTest.java @@ -24,6 +24,7 @@ import java.util.Date; import org.junit.Test; import com.mysema.query.types.Expression; +import com.mysema.query.types.Ops; import com.mysema.query.types.expr.NumberExpression; import com.mysema.query.types.path.StringPath; @@ -35,6 +36,15 @@ import com.mysema.query.types.path.StringPath; */ public class ColQueryTest extends AbstractQueryTest { + @Test + public void CustomTemplates() { + ColQueryTemplates templates = new ColQueryTemplates() {{ + add(Ops.DateTimeOps.MONTH, "{0}.getMonthOfYear()"); + add(Ops.DateTimeOps.YEAR, "{0}.getYear()"); + }}; + ColQuery query = new ColQueryImpl(templates); + } + @Test public void InstanceOf() { assertEquals(