mirror of
https://github.com/querydsl/querydsl.git
synced 2026-06-13 21:01:01 +08:00
splitted Param into Param and ParamExpression
This commit is contained in:
parent
1e8620fb05
commit
e0a820c2cc
@ -32,9 +32,9 @@ import com.mysema.query.QueryMetadata;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.FactoryExpression;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* DefaultEvaluatorFactory extends the EvaluatorFactory class to provide Java source
|
||||
|
||||
@ -21,11 +21,11 @@ import com.mysema.query.collections.Cat;
|
||||
import com.mysema.query.collections.MiniApi;
|
||||
import com.mysema.query.collections.QCat;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.expr.ArrayConstructorExpression;
|
||||
import com.mysema.query.types.expr.BooleanExpression;
|
||||
import com.mysema.query.types.expr.ConstructorExpression;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.expr.QTuple;
|
||||
|
||||
public class ColQueryStandardTest {
|
||||
|
||||
@ -19,9 +19,9 @@ import javax.annotation.Nullable;
|
||||
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* DefaultQueryMetadata is the default implementation of the {@link QueryMetadata} interface
|
||||
|
||||
@ -9,8 +9,8 @@ import javax.annotation.Nonnegative;
|
||||
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* Query provides a query interface of the fluent query DSL.
|
||||
|
||||
@ -14,8 +14,8 @@ import javax.annotation.Nullable;
|
||||
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* QueryMetadata defines query metadata such as query sources, filtering
|
||||
|
||||
@ -8,8 +8,8 @@ package com.mysema.query;
|
||||
import javax.annotation.Nonnegative;
|
||||
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* SimpleQuery defines a simple querying interface than {@link Query}
|
||||
|
||||
@ -8,8 +8,8 @@ package com.mysema.query.support;
|
||||
import com.mysema.query.QueryModifiers;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* QueryBase provides a stub for Query implementations
|
||||
|
||||
@ -18,10 +18,10 @@ import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.ExpressionUtils;
|
||||
import com.mysema.query.types.Ops;
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.SubQueryExpression;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.expr.SimpleOperation;
|
||||
import com.mysema.query.types.path.MapPath;
|
||||
|
||||
|
||||
@ -15,8 +15,8 @@ import com.mysema.query.SimpleProjectable;
|
||||
import com.mysema.query.SimpleQuery;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
import edu.umd.cs.findbugs.annotations.SuppressWarnings;
|
||||
|
||||
|
||||
@ -47,7 +47,7 @@ public final class ExtractorVisitor implements Visitor<Expression<?>,Void>{
|
||||
}
|
||||
|
||||
@Override
|
||||
public Expression<?> visit(Param<?> expr, Void context) {
|
||||
public Expression<?> visit(ParamExpression<?> expr, Void context) {
|
||||
return expr;
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1,25 @@
|
||||
package com.mysema.query.types;
|
||||
|
||||
/**
|
||||
* @author tiwe
|
||||
*
|
||||
* @param <T>
|
||||
*/
|
||||
public interface ParamExpression<T> extends Expression<T>{
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
String getName();
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
boolean isAnon();
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
String getNotSetMessage();
|
||||
|
||||
}
|
||||
@ -5,6 +5,8 @@
|
||||
*/
|
||||
package com.mysema.query.types;
|
||||
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* @author tiwe
|
||||
*
|
||||
|
||||
@ -151,7 +151,7 @@ public abstract class SerializerBase<S extends SerializerBase<S>> implements Vis
|
||||
}
|
||||
|
||||
@Override
|
||||
public Void visit(Param<?> param, Void context){
|
||||
public Void visit(ParamExpression<?> param, Void context){
|
||||
String paramLabel;
|
||||
if (param.isAnon()){
|
||||
paramLabel = anonParamPrefix + param.getName();
|
||||
|
||||
@ -101,7 +101,7 @@ public final class ToStringVisitor implements Visitor<String,Templates>{
|
||||
}
|
||||
|
||||
@Override
|
||||
public String visit(Param<?> param, Templates templates) {
|
||||
public String visit(ParamExpression<?> param, Templates templates) {
|
||||
return "{" + param.getName() + "}";
|
||||
}
|
||||
|
||||
|
||||
@ -55,6 +55,6 @@ public interface Visitor<R,C>{
|
||||
* @param expr
|
||||
*/
|
||||
@Nullable
|
||||
R visit(Param<?> expr, @Nullable C context);
|
||||
R visit(ParamExpression<?> expr, @Nullable C context);
|
||||
|
||||
}
|
||||
|
||||
@ -3,10 +3,11 @@
|
||||
* All rights reserved.
|
||||
*
|
||||
*/
|
||||
package com.mysema.query.types;
|
||||
package com.mysema.query.types.expr;
|
||||
|
||||
import com.mysema.commons.lang.Assert;
|
||||
import com.mysema.query.types.expr.SimpleExpression;
|
||||
import com.mysema.query.types.ParamExpression;
|
||||
import com.mysema.query.types.Visitor;
|
||||
|
||||
/**
|
||||
* Param defines a parameter in a query with an optional name
|
||||
@ -15,7 +16,7 @@ import com.mysema.query.types.expr.SimpleExpression;
|
||||
*
|
||||
* @param <T>
|
||||
*/
|
||||
public class Param<T> extends SimpleExpression<T> {
|
||||
public class Param<T> extends SimpleExpression<T> implements ParamExpression<T>{
|
||||
|
||||
private static final long serialVersionUID = -6872502615009012503L;
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
package com.mysema.query.serialization;
|
||||
|
||||
import com.mysema.query.types.FactoryExpression;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamExpression;
|
||||
import com.mysema.query.types.SerializerBase;
|
||||
import com.mysema.query.types.SubQueryExpression;
|
||||
import com.mysema.query.types.Templates;
|
||||
@ -28,7 +28,7 @@ public class DummySerializer extends SerializerBase<DummySerializer>{
|
||||
}
|
||||
|
||||
@Override
|
||||
public Void visit(Param<?> expr, Void context) {
|
||||
public Void visit(ParamExpression<?> expr, Void context) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@ -10,6 +10,8 @@ import static org.junit.Assert.assertFalse;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
public class ParamTest {
|
||||
|
||||
Param<String> param11 = new Param<String>(String.class, "param1");
|
||||
|
||||
@ -22,8 +22,8 @@ import com.mysema.query.lucene.LuceneSerializer;
|
||||
import com.mysema.query.support.QueryMixin;
|
||||
import com.mysema.query.types.EntityPath;
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* SearchQuery is a Query implementation for Hibernate Search
|
||||
|
||||
@ -259,7 +259,7 @@ public class JPQLSerializer extends SerializerBase<JPQLSerializer> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Void visit(Param<?> param, Void context){
|
||||
public Void visit(ParamExpression<?> param, Void context){
|
||||
append(":");
|
||||
super.visit(param, context);
|
||||
return null;
|
||||
|
||||
@ -22,8 +22,8 @@ import org.hibernate.type.LongType;
|
||||
import org.hibernate.type.ShortType;
|
||||
import org.hibernate.type.Type;
|
||||
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* Utility methods for Hibernate
|
||||
|
||||
@ -9,8 +9,8 @@ import java.util.Map;
|
||||
|
||||
import javax.persistence.Query;
|
||||
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* Utility methods for JPA
|
||||
|
||||
@ -28,12 +28,12 @@ import com.mysema.query.jpa.domain.Cat;
|
||||
import com.mysema.query.jpa.domain.DomesticCat;
|
||||
import com.mysema.query.jpa.domain.QCat;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.expr.ArrayConstructorExpression;
|
||||
import com.mysema.query.types.expr.BooleanExpression;
|
||||
import com.mysema.query.types.expr.ConstructorExpression;
|
||||
import com.mysema.query.types.expr.ListExpression;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.expr.QTuple;
|
||||
import com.mysema.query.types.expr.StringExpression;
|
||||
|
||||
|
||||
@ -20,6 +20,7 @@ import org.apache.commons.lang.ClassUtils;
|
||||
import com.mysema.query.JoinExpression;
|
||||
import com.mysema.query.QueryMetadata;
|
||||
import com.mysema.query.types.*;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.expr.SimpleOperation;
|
||||
import com.mysema.query.types.expr.StringConstant;
|
||||
|
||||
|
||||
@ -28,11 +28,11 @@ import com.mysema.query.jdo.test.domain.QProduct;
|
||||
import com.mysema.query.jdo.test.domain.QStore;
|
||||
import com.mysema.query.jdo.test.domain.Store;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.expr.ArrayConstructorExpression;
|
||||
import com.mysema.query.types.expr.BooleanExpression;
|
||||
import com.mysema.query.types.expr.ConstructorExpression;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.expr.QTuple;
|
||||
|
||||
public class JDOQLQueryStandardTest extends AbstractJDOTest {
|
||||
|
||||
@ -23,8 +23,8 @@ import com.mysema.query.SimpleProjectable;
|
||||
import com.mysema.query.SimpleQuery;
|
||||
import com.mysema.query.support.QueryMixin;
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* LuceneQuery is a Querydsl query implementation for Lucene queries.
|
||||
|
||||
@ -23,6 +23,7 @@ import org.apache.lucene.util.NumericUtils;
|
||||
|
||||
import com.mysema.query.QueryMetadata;
|
||||
import com.mysema.query.types.*;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* Serializes Querydsl queries to Lucene queries.
|
||||
|
||||
@ -36,9 +36,9 @@ import org.junit.Test;
|
||||
import com.mysema.query.QueryException;
|
||||
import com.mysema.query.QueryModifiers;
|
||||
import com.mysema.query.SearchResults;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.PathMetadataFactory;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.path.EntityPathBase;
|
||||
import com.mysema.query.types.path.NumberPath;
|
||||
import com.mysema.query.types.path.StringPath;
|
||||
|
||||
@ -39,12 +39,12 @@ import com.mysema.query.support.QueryMixin;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.FactoryExpression;
|
||||
import com.mysema.query.types.OrderSpecifier;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.SubQueryExpression;
|
||||
import com.mysema.query.types.custom.SimpleTemplate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.expr.QBean;
|
||||
import com.mysema.query.types.query.ListSubQuery;
|
||||
import com.mysema.util.ResultSetAdapter;
|
||||
|
||||
@ -465,7 +465,7 @@ public class SQLSerializer extends SerializerBase<SQLSerializer> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Void visit(Param<?> param, Void context){
|
||||
public Void visit(ParamExpression<?> param, Void context){
|
||||
append("?");
|
||||
constants.add(param);
|
||||
if (constantPaths.size() < constants.size()){
|
||||
|
||||
@ -11,9 +11,9 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import com.mysema.query.sql.Configuration;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* AbstractSQLClause is a superclass for SQL based DMLClause implementations
|
||||
|
||||
@ -26,8 +26,8 @@ import com.mysema.query.sql.Configuration;
|
||||
import com.mysema.query.sql.RelationalPath;
|
||||
import com.mysema.query.sql.SQLSerializer;
|
||||
import com.mysema.query.sql.SQLTemplates;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
|
||||
/**
|
||||
* SQLDeleteClause defines a DELETE clause
|
||||
|
||||
@ -34,9 +34,9 @@ import com.mysema.query.sql.RelationalPath;
|
||||
import com.mysema.query.sql.SQLSerializer;
|
||||
import com.mysema.query.sql.SQLTemplates;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.SubQueryExpression;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.expr.SimpleConstant;
|
||||
import com.mysema.query.types.path.NullExpr;
|
||||
import com.mysema.util.ResultSetAdapter;
|
||||
|
||||
@ -33,9 +33,9 @@ import com.mysema.query.sql.SQLSerializer;
|
||||
import com.mysema.query.sql.SQLTemplates;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.ExpressionUtils;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.SubQueryExpression;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.expr.SimpleConstant;
|
||||
import com.mysema.query.types.path.NullExpr;
|
||||
|
||||
|
||||
@ -30,9 +30,9 @@ import com.mysema.query.sql.Configuration;
|
||||
import com.mysema.query.sql.RelationalPath;
|
||||
import com.mysema.query.sql.SQLSerializer;
|
||||
import com.mysema.query.sql.SQLTemplates;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Predicate;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.path.NullExpr;
|
||||
|
||||
/**
|
||||
|
||||
@ -44,7 +44,6 @@ import com.mysema.query.sql.domain.IdName;
|
||||
import com.mysema.query.sql.domain.QEmployee;
|
||||
import com.mysema.query.sql.domain.QIdName;
|
||||
import com.mysema.query.types.Expression;
|
||||
import com.mysema.query.types.Param;
|
||||
import com.mysema.query.types.ParamNotSetException;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.SubQueryExpression;
|
||||
@ -53,6 +52,7 @@ import com.mysema.query.types.expr.ArrayConstructorExpression;
|
||||
import com.mysema.query.types.expr.BooleanExpression;
|
||||
import com.mysema.query.types.expr.ConstructorExpression;
|
||||
import com.mysema.query.types.expr.NumberExpression;
|
||||
import com.mysema.query.types.expr.Param;
|
||||
import com.mysema.query.types.expr.QTuple;
|
||||
import com.mysema.query.types.path.NumberPath;
|
||||
import com.mysema.query.types.path.PathBuilder;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user