Package javax.persistence.criteria

Examples of javax.persistence.criteria.Expression


     * @param y
     *            expression
     * @return modulus
     */
    public Expression<Integer> mod(Integer x, Expression<Integer> y){
        Expression xExp = literal(x);
        return new FunctionExpressionImpl(this.metamodel, ClassConstants.INTEGER, ExpressionMath.mod(((InternalSelection)xExp).getCurrentNode(),((InternalSelection)y).getCurrentNode()), buildList(xExp,y), "mod");
    }
View Full Code Here


     */
    public <T> Expression<T> function(String name, Class<T> type, Expression<?>... args){
        if (args != null && args.length > 0){
        Vector<org.eclipse.persistence.expressions.Expression> params = new Vector<org.eclipse.persistence.expressions.Expression>();
        for (int index = 1; index < args.length; ++index){
            Expression x = args[index];
            if (((InternalSelection)x).isFrom()){
                ((FromImpl)x).isLeaf = false;
            }
            params.add(((InternalSelection)x).getCurrentNode());
        }
View Full Code Here

     * @param y
     *            expression
     * @return modulus
     */
    public Expression<Integer> mod(Integer x, Expression<Integer> y){
        Expression xExp = literal(x);
        return new FunctionExpressionImpl(this.metamodel, ClassConstants.INTEGER, ExpressionMath.mod(((InternalSelection)xExp).getCurrentNode(),((InternalSelection)y).getCurrentNode()), buildList(xExp,y), "mod");
    }
View Full Code Here

     */
    public <T> Expression<T> function(String name, Class<T> type, Expression<?>... args){
        if (args != null && args.length > 0){
        Vector<org.eclipse.persistence.expressions.Expression> params = new Vector<org.eclipse.persistence.expressions.Expression>();
        for (int index = 1; index < args.length; ++index){
            Expression x = args[index];
            if (((InternalSelection)x).isFrom()){
                ((FromImpl)x).isLeaf = false;
            }
            params.add(((InternalSelection)x).getCurrentNode());
        }
View Full Code Here

                + " FROM CompUser e";
       
        CriteriaQuery<Tuple> q = cb.createTupleQuery();
        Root<CompUser> e = q.from(CompUser.class);
        Expression<Integer> cage = cb.sum(e.get(CompUser_.age), 1);
        Expression d2 = cb.selectCase(
                e.get(CompUser_.address).get(Address_.country)).when("USA",
                "us").otherwise("non-us");
        q.multiselect(e.get(CompUser_.name), cage, d2, e.get(CompUser_.address).get(
                Address_.country));
       
View Full Code Here

                + " THEN 'United-States' "
                + " ELSE e.address.country  END," + " e.address.country "
                + " FROM CompUser e";
        CriteriaQuery<Tuple> q = cb.createTupleQuery();
        Root<CompUser> e = q.from(CompUser.class);
        Expression cage = cb.sum(e.get(CompUser_.age), 1);
        Expression d2 = cb.selectCase(
                e.get(CompUser_.address).get(Address_.country)).when("USA",
                "United-States").otherwise(
                e.get(CompUser_.address).get(Address_.country));
        q.multiselect(e.get(CompUser_.name), cage, d2, e.get(CompUser_.address).get(
                Address_.country));
View Full Code Here

        String query = "SELECT e.name, CASE e.address.country WHEN 'USA'"
                + " THEN true ELSE false END,"
                + " e.address.country FROM CompUser e";
        CriteriaQuery<Tuple> q = cb.createTupleQuery();
        Root<CompUser> e = q.from(CompUser.class);
        Expression b = cb.selectCase(
                e.get(CompUser_.address).get(Address_.country)).when("USA",
                true).otherwise(false);
        q.multiselect(e.get(CompUser_.name), b, e.get(CompUser_.address).get(
                Address_.country));
       
View Full Code Here

                + " CASE WHEN e.age > 30 THEN e.age - 1 "
                + " WHEN e.age < 15 THEN e.age + 1 ELSE e.age + 0 "
                + " END FROM CompUser e";
        CriteriaQuery<Tuple> q = cb.createTupleQuery();
        Root<CompUser> e = q.from(CompUser.class);
        Expression cage = cb.selectCase().when(cb.gt(e.get(CompUser_.age), 30),
                cb.diff(e.get(CompUser_.age), 1)).when(
                cb.lt(e.get(CompUser_.age), 15),
                cb.sum(e.get(CompUser_.age), 1)).otherwise(
                cb.sum(e.get(CompUser_.age), 0));
        q.multiselect(e.get(CompUser_.name), e.get(CompUser_.age), cage);
View Full Code Here

                + " ELSE 'Non United-States'  END,"
                + " e.address.country "
                + " FROM CompUser e";
        CriteriaQuery<Tuple> q = cb.createTupleQuery();
        Root<CompUser> e = q.from(CompUser.class);
        Expression d2 = cb.selectCase()
                .when(
                        cb.equal(
                                e.get(CompUser_.address).get(Address_.country),
                                "USA"), "United-States").otherwise(
                        "Non United-States");
        Expression cage = cb.sum(e.get(CompUser_.age), 1);
        q.multiselect(e.get(CompUser_.name), cage, d2, e.get(CompUser_.address).get(
                Address_.country));

        assertEquivalence(q, query);
    }
View Full Code Here

        CriteriaQuery<EntityA_Coll_String> q = cb.createQuery(EntityA_Coll_String.class);
        Root<EntityA_Coll_String> a = q.from(EntityA_Coll_String.class);
        q.select(a);
        Subquery<Set> sq = q.subquery(Set.class);
        Root<EntityA_Coll_String> a1 = sq.from(EntityA_Coll_String.class);
        Expression n = a1.get(EntityA_Coll_String_.nickNames);
        n.alias("n");
        sq.where(cb.like(n, "%1"));
        sq.select(n);
        q.where(cb.exists(sq));
        q.orderBy(cb.asc(a));
       
View Full Code Here

TOP

Related Classes of javax.persistence.criteria.Expression

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.