From ece9184cdefba7277e042d4148e4bcaa94cbb826 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Westk=C3=A4mper?= Date: Fri, 16 Jan 2009 13:59:32 +0000 Subject: [PATCH] --- .../com/mysema/query/collections/MiniApi.java | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 querydsl-collections/src/main/java/com/mysema/query/collections/MiniApi.java diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/MiniApi.java b/querydsl-collections/src/main/java/com/mysema/query/collections/MiniApi.java new file mode 100644 index 000000000..d29080f49 --- /dev/null +++ b/querydsl-collections/src/main/java/com/mysema/query/collections/MiniApi.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2008 Mysema Ltd. + * All rights reserved. + * + */ +package com.mysema.query.collections; + +import java.util.Arrays; + +import com.mysema.query.grammar.Grammar; +import com.mysema.query.grammar.GrammarWithAlias; +import com.mysema.query.grammar.OrderSpecifier; +import com.mysema.query.grammar.types.Expr; +import com.mysema.query.grammar.types.Path; +import com.mysema.query.grammar.types.PathExtractor; + +/** + * MiniApi provides static convenience methods for query construction + * + * @author tiwe + * @version $Id$ + */ +public class MiniApi extends GrammarWithAlias{ + + public static ColQuery from(Expr path, A... arr){ + return from(path, Arrays.asList(arr)); + } + + @SuppressWarnings("unchecked") + public static ColQuery from(Expr path, Iterable col){ + return new ColQuery().from((Path)path, col); + } + + @SuppressWarnings("unchecked") + public static Iterable select(Iterable from, Expr.EBoolean where, OrderSpecifier... order){ + Path path = (Path) new PathExtractor().handle(where).getPath(); + ColQuery query = new ColQuery().from(path, from).where(where).orderBy(order); + return query.iterate((Expr)path); + } + + public static Iterable reject(Iterable from, Expr.EBoolean where, OrderSpecifier...order){ + return select(from, Grammar.not(where), order); + } + +}