@Override public Expression getRightExpression() { return (Expression) obj.getRightRowValue(); }
@Override public Expression getRightExpression() { return (Expression) obj.getRightRowValue(); }
@Override public void visit(IsDistinctCriteria isDistinctCriteria) { if (isDistinctCriteria.getLeftRowValue() instanceof GroupSymbol || isDistinctCriteria.getRightRowValue() instanceof GroupSymbol) { evaluationNotPossible(EvaluationLevel.PROCESSING); } }
@Override public void visit(IsDistinctCriteria isDistinctCriteria) { if (isDistinctCriteria.getLeftRowValue() instanceof GroupSymbol || isDistinctCriteria.getRightRowValue() instanceof GroupSymbol) { evaluationNotPossible(EvaluationLevel.PROCESSING); } }
@Override public void visit(IsDistinctCriteria obj) { preVisitVisitor(obj); //don't visit as that will fail the validation that scalar/row value groupsymbols can't be referenced if (!(obj.getLeftRowValue() instanceof GroupSymbol)) { visitNode(obj.getLeftRowValue()); } if (!(obj.getRightRowValue() instanceof GroupSymbol)) { visitNode(obj.getRightRowValue()); } postVisitVisitor(obj); }
@Override public void visit(IsDistinctCriteria obj) { preVisitVisitor(obj); //don't visit as that will fail the validation that scalar/row value groupsymbols can't be referenced if (!(obj.getLeftRowValue() instanceof GroupSymbol)) { visitNode(obj.getLeftRowValue()); } if (!(obj.getRightRowValue() instanceof GroupSymbol)) { visitNode(obj.getRightRowValue()); } postVisitVisitor(obj); }
@Override public void visit(IsDistinctCriteria obj) { try { if (!(obj.getLeftRowValue() instanceof GroupSymbol) && !(obj.getRightRowValue() instanceof GroupSymbol)) { resolveCompareCriteria(new BinaryComparison() {
@Override public void visit(IsDistinctCriteria obj) { try { if (!(obj.getLeftRowValue() instanceof GroupSymbol) && !(obj.getRightRowValue() instanceof GroupSymbol)) { resolveCompareCriteria(new BinaryComparison() {
@Override public void visit(IsDistinctCriteria isDistinctCriteria) { try { QueryMetadataInterface metadata = getMetadata(); if (isDistinctCriteria.getLeftRowValue() instanceof GroupSymbol && !metadata.isScalarGroup(((GroupSymbol) isDistinctCriteria.getLeftRowValue()).getMetadataID())) { handleValidationError(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31171, isDistinctCriteria.getLeftRowValue()), isDistinctCriteria.getLeftRowValue()); } if (isDistinctCriteria.getRightRowValue() instanceof GroupSymbol && !metadata.isScalarGroup(((GroupSymbol) isDistinctCriteria.getRightRowValue()).getMetadataID())) { handleValidationError(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31171, isDistinctCriteria.getRightRowValue()), isDistinctCriteria.getRightRowValue()); } } catch (QueryMetadataException e) { handleException(e); } catch (TeiidComponentException e) { handleException(e); } }
@Override public void visit(IsDistinctCriteria isDistinctCriteria) { try { QueryMetadataInterface metadata = getMetadata(); if (isDistinctCriteria.getLeftRowValue() instanceof GroupSymbol && !metadata.isScalarGroup(((GroupSymbol) isDistinctCriteria.getLeftRowValue()).getMetadataID())) { handleValidationError(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31171, isDistinctCriteria.getLeftRowValue()), isDistinctCriteria.getLeftRowValue()); } if (isDistinctCriteria.getRightRowValue() instanceof GroupSymbol && !metadata.isScalarGroup(((GroupSymbol) isDistinctCriteria.getRightRowValue()).getMetadataID())) { handleValidationError(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31171, isDistinctCriteria.getRightRowValue()), isDistinctCriteria.getRightRowValue()); } } catch (QueryMetadataException e) { handleException(e); } catch (TeiidComponentException e) { handleException(e); } }
@Override public void visit(IsDistinctCriteria isDistinctCriteria) { try { ResolverUtil.resolveGroup(isDistinctCriteria.getLeftRowValue(), metadata); ResolverUtil.resolveGroup(isDistinctCriteria.getRightRowValue(), metadata); } catch (QueryResolverException e) { handleException(e); } catch (TeiidComponentException e) { handleException(e); } }
org.teiid.language.IsDistinct translate(IsDistinctCriteria criteria) { return new IsDistinct(translate((Expression) criteria.getLeftRowValue()), translate((Expression)criteria.getRightRowValue()), criteria.isNegated()); }
org.teiid.language.IsDistinct translate(IsDistinctCriteria criteria) { return new IsDistinct(translate((Expression) criteria.getLeftRowValue()), translate((Expression)criteria.getRightRowValue()), criteria.isNegated()); }
@Override public void visit(IsDistinctCriteria isDistinctCriteria) { try { QueryMetadataInterface metadata = getMetadata(); if (!metadata.isScalarGroup(isDistinctCriteria.getLeftRowValue().getMetadataID())) { handleValidationError(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31171, isDistinctCriteria.getLeftRowValue()), isDistinctCriteria.getLeftRowValue()); } if (!metadata.isScalarGroup(isDistinctCriteria.getRightRowValue().getMetadataID())) { handleValidationError(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31171, isDistinctCriteria.getRightRowValue()), isDistinctCriteria.getRightRowValue()); } } catch (QueryMetadataException e) { handleException(e); } catch (TeiidComponentException e) { handleException(e); } }
@Override public void visit(IsDistinctCriteria obj) { obj.setLeftRowValue(resolveAsGroup(obj.getLeftRowValue())); obj.setRightRowValue(resolveAsGroup(obj.getRightRowValue())); super.visit(obj); }
@Override public void visit(IsDistinctCriteria obj) { obj.setLeftRowValue(resolveAsGroup(obj.getLeftRowValue())); obj.setRightRowValue(resolveAsGroup(obj.getRightRowValue())); super.visit(obj); }
/** * Deep copy of object * @return Deep copy of object */ public Object clone() { IsDistinctCriteria criteriaCopy = new IsDistinctCriteria(); criteriaCopy.setNegated(isNegated()); criteriaCopy.setLeftRowValue(this.getLeftRowValue().clone()); criteriaCopy.setRightRowValue(this.getRightRowValue().clone()); return criteriaCopy; }
@Override public void visit(IsDistinctCriteria isDistinctCriteria) { append(isDistinctCriteria.getLeftRowValue()); append(SPACE); append(IS); append(SPACE); if (isDistinctCriteria.isNegated()) { append(NOT); append(SPACE); } append(DISTINCT); append(SPACE); append(FROM); append(SPACE); append(isDistinctCriteria.getRightRowValue()); }
@Override public void visit(IsDistinctCriteria isDistinctCriteria) { append(isDistinctCriteria.getLeftRowValue()); append(SPACE); append(IS); append(SPACE); if (isDistinctCriteria.isNegated()) { append(NOT); append(SPACE); } append(DISTINCT); append(SPACE); append(FROM); append(SPACE); append(isDistinctCriteria.getRightRowValue()); }
@Override public void visit(IsDistinctCriteria isDistinctCriteria) { append(isDistinctCriteria.getLeftRowValue()); append(SPACE); append(IS); append(SPACE); if (isDistinctCriteria.isNegated()) { append(NOT); append(SPACE); } append(DISTINCT); append(SPACE); append(FROM); append(SPACE); append(isDistinctCriteria.getRightRowValue()); }