mirror of
https://github.com/querydsl/querydsl.git
synced 2026-06-24 21:07:26 +08:00
added alias methods for Operation
This commit is contained in:
parent
fc82de8865
commit
fffaeea5a7
@ -15,6 +15,13 @@ import java.util.List;
|
||||
* @version $Id$
|
||||
*/
|
||||
public interface Operation<RT> {
|
||||
/**
|
||||
* Create an alias for the operation
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
Expr<RT> as(Path<RT> alias);
|
||||
|
||||
/**
|
||||
* Cast to {@link Expr}
|
||||
*
|
||||
|
||||
@ -12,6 +12,7 @@ import com.mysema.query.types.Expr;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Operator;
|
||||
import com.mysema.query.types.Ops;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Visitor;
|
||||
|
||||
/**
|
||||
@ -76,5 +77,10 @@ public class OBoolean extends EBoolean implements Operation<Boolean> {
|
||||
public int hashCode(){
|
||||
return getType().hashCode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Expr<Boolean> as(Path<Boolean> alias) {
|
||||
return OBoolean.create((Operator)Ops.ALIAS, this, alias.asExpr());
|
||||
}
|
||||
|
||||
}
|
||||
@ -11,6 +11,8 @@ import java.util.List;
|
||||
import com.mysema.query.types.Expr;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Operator;
|
||||
import com.mysema.query.types.Ops;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Visitor;
|
||||
|
||||
/**
|
||||
@ -78,4 +80,10 @@ public class OComparable<D extends Comparable<?>> extends
|
||||
public int hashCode(){
|
||||
return getType().hashCode();
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public EComparable<D> as(Path<D> alias) {
|
||||
return OComparable.create(getType(),(Operator)Ops.ALIAS, this, alias.asExpr());
|
||||
}
|
||||
}
|
||||
@ -11,6 +11,8 @@ import java.util.List;
|
||||
import com.mysema.query.types.Expr;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Operator;
|
||||
import com.mysema.query.types.Ops;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Visitor;
|
||||
|
||||
/**
|
||||
@ -78,4 +80,10 @@ public class ODate<D extends Comparable<?>> extends
|
||||
public int hashCode(){
|
||||
return getType().hashCode();
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public EDate<D> as(Path<D> alias) {
|
||||
return ODate.create(getType(),(Operator)Ops.ALIAS, this, alias.asExpr());
|
||||
}
|
||||
}
|
||||
|
||||
@ -11,6 +11,8 @@ import java.util.List;
|
||||
import com.mysema.query.types.Expr;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Operator;
|
||||
import com.mysema.query.types.Ops;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Visitor;
|
||||
|
||||
/**
|
||||
@ -79,4 +81,10 @@ public class ODateTime<D extends Comparable<?>> extends
|
||||
public int hashCode(){
|
||||
return getType().hashCode();
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public EDateTime<D> as(Path<D> alias) {
|
||||
return ODateTime.create(getType(),(Operator)Ops.ALIAS, this, alias.asExpr());
|
||||
}
|
||||
}
|
||||
|
||||
@ -11,6 +11,8 @@ import java.util.List;
|
||||
import com.mysema.query.types.Expr;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Operator;
|
||||
import com.mysema.query.types.Ops;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Visitor;
|
||||
|
||||
/**
|
||||
@ -78,4 +80,10 @@ public class ONumber<D extends Number & Comparable<?>>
|
||||
public int hashCode(){
|
||||
return getType().hashCode();
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public ENumber<D> as(Path<D> alias) {
|
||||
return ONumber.create(getType(),(Operator)Ops.ALIAS, this, alias.asExpr());
|
||||
}
|
||||
}
|
||||
@ -11,6 +11,8 @@ import java.util.List;
|
||||
import com.mysema.query.types.Expr;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Operator;
|
||||
import com.mysema.query.types.Ops;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Visitor;
|
||||
|
||||
/**
|
||||
@ -77,4 +79,10 @@ public class OSimple<D> extends ESimple<D> implements Operation<D> {
|
||||
public int hashCode(){
|
||||
return getType().hashCode();
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public Expr<D> as(Path<D> alias) {
|
||||
return OSimple.create(getType(),(Operator)Ops.ALIAS, this, alias.asExpr());
|
||||
}
|
||||
}
|
||||
@ -11,6 +11,8 @@ import java.util.List;
|
||||
import com.mysema.query.types.Expr;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Operator;
|
||||
import com.mysema.query.types.Ops;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Visitor;
|
||||
|
||||
/**
|
||||
@ -66,4 +68,9 @@ public class OString extends EString implements Operation<String> {
|
||||
public int hashCode(){
|
||||
return getType().hashCode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public EString as(Path<String> alias) {
|
||||
return OString.create((Operator)Ops.ALIAS, this, alias.asExpr());
|
||||
}
|
||||
}
|
||||
@ -11,6 +11,8 @@ import java.util.List;
|
||||
import com.mysema.query.types.Expr;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Operator;
|
||||
import com.mysema.query.types.Ops;
|
||||
import com.mysema.query.types.Path;
|
||||
import com.mysema.query.types.Visitor;
|
||||
|
||||
/**
|
||||
@ -77,4 +79,10 @@ public class OTime<D extends Comparable<?>> extends ETime<D> implements Operatio
|
||||
public int hashCode(){
|
||||
return getType().hashCode();
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public ETime<D> as(Path<D> alias) {
|
||||
return OTime.create(getType(),(Operator)Ops.ALIAS, this, alias.asExpr());
|
||||
}
|
||||
}
|
||||
|
||||
@ -12,6 +12,7 @@ import java.util.List;
|
||||
import com.mysema.query.types.Expr;
|
||||
import com.mysema.query.types.Operation;
|
||||
import com.mysema.query.types.Operator;
|
||||
import com.mysema.query.types.Path;
|
||||
|
||||
/**
|
||||
* @author tiwe
|
||||
@ -78,5 +79,10 @@ public final class OperationMixin<RT> implements Operation<RT>, Serializable {
|
||||
public int hashCode(){
|
||||
return self.getType().hashCode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Expr<RT> as(Path<RT> alias) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user