@Override public void visit(CaseExpression caseExpression) { buffer.append("CASE "); Expression switchExp = caseExpression.getSwitchExpression(); if (switchExp != null) { switchExp.accept(this); buffer.append(" "); } for (Expression exp : caseExpression.getWhenClauses()) { exp.accept(this); } Expression elseExp = caseExpression.getElseExpression(); if (elseExp != null) { buffer.append("ELSE "); elseExp.accept(this); buffer.append(" "); } buffer.append("END"); }
@Override public void visit(CaseExpression expr) { if (expr.getSwitchExpression() != null) { expr.getSwitchExpression().accept(this); } for (Expression x : expr.getWhenClauses()) { x.accept(this); } if (expr.getElseExpression() != null) { expr.getElseExpression().accept(this); } }
public void visit(CaseExpression caseExpression) { buffer.append("CASE "); Expression switchExp = caseExpression.getSwitchExpression(); if( switchExp != null ) { switchExp.accept(this); } List clauses = caseExpression.getWhenClauses(); for (Iterator iter = clauses.iterator(); iter.hasNext();) { Expression exp = (Expression) iter.next(); exp.accept(this); } Expression elseExp = caseExpression.getElseExpression(); if( elseExp != null ) { elseExp.accept(this); } buffer.append(" END"); }
@Override public void visit(CaseExpression caseExpression) { if (caseExpression.getSwitchExpression() != null) { caseExpression.getSwitchExpression().accept(this); } if (caseExpression.getWhenClauses() != null) { for (WhenClause when : caseExpression.getWhenClauses()) { when.accept(this); } } if (caseExpression.getElseExpression() != null) { caseExpression.getElseExpression().accept(this); } }
@SuppressWarnings("unchecked") public void visit(CaseExpression caseExpression) { Expression switchExpr = qualify(session, tableAliases, caseExpression.getSwitchExpression()); Expression elseExpr = qualify(session, tableAliases, caseExpression.getElseExpression()); List<WhenClause> whenClauses = null; if (caseExpression.getWhenClauses() != null) { whenClauses = new ArrayList<WhenClause>(); for (Iterator<WhenClause> it = caseExpression.getWhenClauses().iterator(); it.hasNext(); ) { WhenClause whenClause = it.next(); WhenClause qWhen = (WhenClause) qualify(session, tableAliases, whenClause); whenClauses.add(qWhen); } } CaseExpression qualifiedWhen = new CaseExpression(); qualifiedWhen.setElseExpression(elseExpr); qualifiedWhen.setSwitchExpression(switchExpr); qualifiedWhen.setWhenClauses(whenClauses); this._qualifiedExpression = qualifiedWhen; }
public void visit(CaseExpression caseExpression) { buffer.append("CASE "); Expression switchExp = caseExpression.getSwitchExpression(); if( switchExp != null ) { switchExp.accept(this); } List clauses = caseExpression.getWhenClauses(); for (Iterator iter = clauses.iterator(); iter.hasNext();) { Expression exp = (Expression) iter.next(); exp.accept(this); } Expression elseExp = caseExpression.getElseExpression(); if( elseExp != null ) { elseExp.accept(this); } buffer.append(" END"); }
@Override public void visit(CaseExpression caseExpression) { buffer.append("CASE "); Expression switchExp = caseExpression.getSwitchExpression(); if (switchExp != null) { switchExp.accept(this); buffer.append(" "); } for (Expression exp : caseExpression.getWhenClauses()) { exp.accept(this); } Expression elseExp = caseExpression.getElseExpression(); if (elseExp != null) { buffer.append("ELSE "); elseExp.accept(this); buffer.append(" "); } buffer.append("END"); }
@Override public void visit(CaseExpression ce) { if (ce.getElseExpression() != null) { ce.getElseExpression().accept(this); } if (ce.getSwitchExpression() != null) { ce.getSwitchExpression().accept(this); } ce.getWhenClauses().forEach(e -> e.accept(this)); }
/** * Override to add missing ELSE keyword in base class. * * @param caseExpression */ @Override public void visit(CaseExpression caseExpression) { log.debug("visit(" + caseExpression.getClass().getSimpleName() + ") " + caseExpression); buffer.append("CASE "); Expression switchExp = caseExpression.getSwitchExpression(); if( switchExp != null ) { switchExp.accept(this); } List clauses = caseExpression.getWhenClauses(); for (Iterator iter = clauses.iterator(); iter.hasNext();) { Expression exp = (Expression) iter.next(); exp.accept(this); } Expression elseExp = caseExpression.getElseExpression(); if( elseExp != null ) { buffer.append(" ELSE "); elseExp.accept(this); } buffer.append(" END"); }
@Override public void visit(CaseExpression caseExpression) { if (caseExpression.getSwitchExpression() != null) { caseExpression.getSwitchExpression().accept(this); } if (caseExpression.getWhenClauses() != null) { caseExpression.getWhenClauses().forEach(e -> e.accept(this)); } if (caseExpression.getElseExpression() != null) { caseExpression.getElseExpression().accept(this); } }
@Override public void visit(CaseExpression expr) { if (expr.getSwitchExpression() != null) { expr.getSwitchExpression().accept(this); } for (Expression x : expr.getWhenClauses()) { x.accept(this); } if (expr.getElseExpression() != null) { expr.getElseExpression().accept(this); } }
@Override public void visit(CaseExpression ce) { log.debug("visit(caseExpression)" + ce); // case if (ce.getSwitchExpression() != null) ce.getSwitchExpression().accept(this); // when if (ce.getWhenClauses() != null) { Iterator i = ce.getWhenClauses().iterator(); while (i.hasNext()) { WhenClause wc = (WhenClause) i.next(); wc.accept(this); } } // else if (ce.getElseExpression() != null) ce.getElseExpression().accept(this); }
public void visit(CaseExpression caseExpression) { buffer.append(caseExpression.getCommentCase() != null ? caseExpression.getCommentElse() + " " + ExpressionDeParser.LINE_SEPARATOR : "").append("Case "); Expression switchExp = caseExpression.getSwitchExpression(); if (switchExp != null) { switchExp.accept(this); } List clauses = caseExpression.getWhenClauses(); for (Iterator iter = clauses.iterator(); iter.hasNext();) { Expression exp = (Expression) iter.next(); exp.accept(this); } Expression elseExp = caseExpression.getElseExpression(); if (elseExp != null) { elseExp.accept(this); } buffer.append(caseExpression.getCommentEnd() != null ? " " + caseExpression.getCommentEnd() + ExpressionDeParser.LINE_SEPARATOR : "").append(" End"); }
public void visit(CaseExpression caseExpression) throws Exception { if (caseExpression.getSwitchExpression()!= null) { caseExpression.getSwitchExpression().accept(this); } if (caseExpression.getWhenClauses()!= null) { for (Expression exp : caseExpression.getWhenClauses()) { exp.accept(this); } } if (caseExpression.getElseExpression() != null) { caseExpression.getElseExpression().accept(this); } }
@Override public void visit(CaseExpression caseExpression) { if (caseExpression.getSwitchExpression() != null) { caseExpression.getSwitchExpression().accept(this); } if (caseExpression.getWhenClauses() != null) { for (WhenClause when : caseExpression.getWhenClauses()) { when.accept(this); } } if (caseExpression.getElseExpression() != null) { caseExpression.getElseExpression().accept(this); } }
@SuppressWarnings("unchecked") public void visit(CaseExpression caseExpression) { Expression switchExpr = qualify(session, tableAliases, caseExpression.getSwitchExpression()); Expression elseExpr = qualify(session, tableAliases, caseExpression.getElseExpression()); List<WhenClause> whenClauses = null; if (caseExpression.getWhenClauses() != null) { whenClauses = new ArrayList<WhenClause>(); for (Iterator<WhenClause> it = caseExpression.getWhenClauses().iterator(); it.hasNext();) { WhenClause whenClause = it.next(); WhenClause qWhen = (WhenClause) qualify(session, tableAliases, whenClause); whenClauses.add(qWhen); } } CaseExpression qualifiedWhen = new CaseExpression(); qualifiedWhen.setElseExpression(elseExpr); qualifiedWhen.setSwitchExpression(switchExpr); qualifiedWhen.setWhenClauses(whenClauses); this._qualifiedExpression = qualifiedWhen; }
public static CompiledCaseExpression create(String validatedTableAlias, CaseExpression caseExpression) { Expression switchExpression = caseExpression.getSwitchExpression(); if (switchExpression != null) { throw new StatementExecutionException("unhandled expression CASE SWITCH, type " + caseExpression.getClass() + ": " + caseExpression); } List<Entry<CompiledSQLExpression, CompiledSQLExpression>> whens = null; if (caseExpression.getWhenClauses() != null) { whens = new ArrayList<>(); for (Expression when : caseExpression.getWhenClauses()) { WhenClause whenClause = (WhenClause) when; CompiledSQLExpression whenCondition = compileExpression(validatedTableAlias, whenClause.getWhenExpression()); if (whenCondition == null) { return null; } CompiledSQLExpression thenExpr = compileExpression(validatedTableAlias, whenClause.getThenExpression()); whens.add(new AbstractMap.SimpleImmutableEntry<>(whenCondition, thenExpr)); } } Expression elseExp = caseExpression.getElseExpression(); if (elseExp != null) { CompiledSQLExpression elseExpression = compileExpression(validatedTableAlias, elseExp); if (elseExpression == null) { return null; } return new CompiledCaseExpression(whens, elseExpression); } else { return new CompiledCaseExpression(whens, null); } }