public class WurbletArgumentExpression extends Object implements WurbletArgumentOperand
| Constructor and Description |
|---|
WurbletArgumentExpression(WurbletArgumentExpression parent)
Creates a new expression.
|
| Modifier and Type | Method and Description |
|---|---|
WurbletArgumentOperator |
addOperand(WurbletArgumentOperator operator,
WurbletArgumentOperand operand)
Adds an operand.
|
List<JoinPath> |
getMergedPaths()
Gets the paths for wurblet arguments which can be expressed in a single SQL EXISTS clause.
The returned list is empty, if there are no paths at all or each argument needs its own EXISTS clause. |
List<WurbletArgumentOperand> |
getOperands()
Gets the n operands.
|
List<WurbletArgumentOperator> |
getOperators()
Gets the n-1 operators.
|
WurbletArgumentExpression |
getParent()
Gets the parent expression.
|
boolean |
needParenthesesAfterAndOperator()
Returns whether expression must be enclosed in parentheses after an AND operator.
|
String |
toCode(CodeGenerator<Object> generator)
Generates the code.
|
String |
toString() |
public WurbletArgumentExpression(WurbletArgumentExpression parent)
parent - optional parent expression, null if this is the top level expressionpublic WurbletArgumentExpression getParent()
public List<WurbletArgumentOperand> getOperands()
public List<WurbletArgumentOperator> getOperators()
public List<JoinPath> getMergedPaths()
public WurbletArgumentOperator addOperand(WurbletArgumentOperator operator, WurbletArgumentOperand operand) throws org.wurbelizer.wurbel.WurbelException
operator - the operator, null defaults to ADDoperand - the operandorg.wurbelizer.wurbel.WurbelException - if failedpublic boolean needParenthesesAfterAndOperator()
public String toCode(CodeGenerator<Object> generator) throws org.wurbelizer.wurbel.WurbelException
generator - the code generatororg.wurbelizer.wurbel.WurbelException - if code generation failedTentackle - distributed, domain- and model-driven