/** * Add a condition to the list of conditions. * * @param cond the condition to add */ public void addCondition(Expression cond) { if (condition == null) { condition = cond; } else { condition = new ConditionAndOr(ConditionAndOr.AND, cond, condition); } }
if (added != null) { added = added.optimize(session); ConditionAndOr a = new ConditionAndOr(AND, this, added); return a; return ValueExpression.get(getValue(session));
public void addFilterCondition(Expression condition, boolean isJoin) { if (isJoin) { if (joinCondition == null) { joinCondition = condition; } else { joinCondition = new ConditionAndOr(ConditionAndOr.AND, joinCondition, condition); } } else { if (filterCondition == null) { filterCondition = condition; } else { filterCondition = new ConditionAndOr(ConditionAndOr.AND, filterCondition, condition); } } }
private Expression readExpression() { Expression r = readAnd(); while (readIf("OR")) { r = new ConditionAndOr(ConditionAndOr.OR, r, readAnd()); } return r; }
private Expression readAnd() { Expression r = readCondition(); while (readIf("AND")) { r = new ConditionAndOr(ConditionAndOr.AND, r, readCondition()); } return r; }
having = comp; } else { having = new ConditionAndOr(ConditionAndOr.AND, having, comp); condition = comp; } else { condition = new ConditionAndOr(ConditionAndOr.AND, condition, comp);
@Override public Expression getNotIfPossible(Session session) { // (NOT (A OR B)): (NOT(A) AND NOT(B)) // (NOT (A AND B)): (NOT(A) OR NOT(B)) Expression l = left.getNotIfPossible(session); if (l == null) { l = new ConditionNot(left); } Expression r = right.getNotIfPossible(session); if (r == null) { r = new ConditionNot(right); } int reversed = andOrType == AND ? OR : AND; return new ConditionAndOr(reversed, l, r); }
checkConstraint = expr; } else { checkConstraint = new ConditionAndOr(ConditionAndOr.AND, checkConstraint, expr);
Expression condHigh = new Comparison(session, Comparison.BIGGER_EQUAL, high, r); r = new ConditionAndOr(ConditionAndOr.AND, condLow, condHigh); } else { int compareType = getCompareType(currentTokenType);
on = equal; } else { on = new ConditionAndOr(ConditionAndOr.AND, on, equal);