From fa83169a59971f71b220d5d4f0d9c7fea41354a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Westk=C3=A4mper?= Date: Sat, 4 Sep 2010 20:19:38 +0000 Subject: [PATCH] --- .../mysema/query/types/ExtractorVisitor.java | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 querydsl-core/src/main/java/com/mysema/query/types/ExtractorVisitor.java diff --git a/querydsl-core/src/main/java/com/mysema/query/types/ExtractorVisitor.java b/querydsl-core/src/main/java/com/mysema/query/types/ExtractorVisitor.java new file mode 100644 index 000000000..bfcfb8a5d --- /dev/null +++ b/querydsl-core/src/main/java/com/mysema/query/types/ExtractorVisitor.java @@ -0,0 +1,64 @@ +package com.mysema.query.types; + +import com.mysema.query.types.Constant; +import com.mysema.query.types.Custom; +import com.mysema.query.types.Expr; +import com.mysema.query.types.FactoryExpression; +import com.mysema.query.types.Operation; +import com.mysema.query.types.Param; +import com.mysema.query.types.Path; +import com.mysema.query.types.SubQueryExpression; +import com.mysema.query.types.Visitor; + +/** + * @author tiwe + * + */ +public class ExtractorVisitor implements Visitor{ + + private Expr expr; + + public ExtractorVisitor(Expr e) { + e.accept(this); + } + + @Override + public void visit(Constant expr) { + this.expr = expr.asExpr(); + } + + @Override + public void visit(Custom expr) { + this.expr = expr.asExpr(); + } + + @Override + public void visit(FactoryExpression expr) { + this.expr = expr.asExpr(); + } + + @Override + public void visit(Operation expr) { + this.expr = expr.asExpr(); + } + + @Override + public void visit(Path expr) { + this.expr = expr.asExpr(); + } + + @Override + public void visit(SubQueryExpression expr) { + this.expr = expr.asExpr(); + } + + @Override + public void visit(Param expr) { + this.expr = expr.asExpr(); + } + + public Expr getExpr() { + return expr; + } + +}