public int getReverseOperator() { int operator = getOperator(); switch(operator) { case CompareCriteria.LT: return CompareCriteria.GT; case CompareCriteria.LE: return CompareCriteria.GE; case CompareCriteria.GT: return CompareCriteria.LT; case CompareCriteria.GE: return CompareCriteria.LE; } return operator; }
public int getReverseOperator() { int operator = getOperator(); switch(operator) { case CompareCriteria.LT: return CompareCriteria.GT; case CompareCriteria.LE: return CompareCriteria.GE; case CompareCriteria.GT: return CompareCriteria.LT; case CompareCriteria.GE: return CompareCriteria.LE; } return operator; }
/** * Override equals() method. * @param obj Other object * @return true if objects are equivalent */ public boolean equals(Object obj) { // Use super.equals() to check obvious stuff and variable if(obj == this) { return true; } if(! (obj instanceof CompareCriteria)) { return false; } //also allow for semantic equivalence on equality CompareCriteria cc = (CompareCriteria)obj; return getOperator() == cc.getOperator() && (EquivalenceUtil.areEqual(getLeftExpression(), cc.getLeftExpression()) && EquivalenceUtil.areEqual(getRightExpression(), cc.getRightExpression())) || (getOperator() == EQ && EquivalenceUtil.areEqual(getLeftExpression(), cc.getRightExpression()) && EquivalenceUtil.areEqual(getRightExpression(), cc.getLeftExpression())); }
/** * Override equals() method. * @param obj Other object * @return true if objects are equivalent */ public boolean equals(Object obj) { // Use super.equals() to check obvious stuff and variable if(obj == this) { return true; } if(! (obj instanceof CompareCriteria)) { return false; } //also allow for semantic equivalence on equality CompareCriteria cc = (CompareCriteria)obj; return getOperator() == cc.getOperator() && (EquivalenceUtil.areEqual(getLeftExpression(), cc.getLeftExpression()) && EquivalenceUtil.areEqual(getRightExpression(), cc.getRightExpression())) || (getOperator() == EQ && EquivalenceUtil.areEqual(getLeftExpression(), cc.getRightExpression()) && EquivalenceUtil.areEqual(getRightExpression(), cc.getLeftExpression())); }
/** * Override equals() method. * @param obj Other object * @return true if objects are equivalent */ public boolean equals(Object obj) { // Use super.equals() to check obvious stuff and variable if(obj == this) { return true; } if(! (obj instanceof CompareCriteria)) { return false; } //also allow for semantic equivalence on equality CompareCriteria cc = (CompareCriteria)obj; return getOperator() == cc.getOperator() && (EquivalenceUtil.areEqual(getLeftExpression(), cc.getLeftExpression()) && EquivalenceUtil.areEqual(getRightExpression(), cc.getRightExpression())) || (getOperator() == EQ && EquivalenceUtil.areEqual(getLeftExpression(), cc.getRightExpression()) && EquivalenceUtil.areEqual(getRightExpression(), cc.getLeftExpression())); }
/** * Get hash code. WARNING: The hash code is based on data in the criteria. * If data values are changed, the hash code will change - don't hash this * object and change values. * @return Hash code */ public int hashCode() { int hc = 0; hc = HashCodeUtil.hashCode(hc, getOperator()); //allow for semantic equivalence hc += HashCodeUtil.hashCode(0, getLeftExpression()); hc += HashCodeUtil.hashCode(0, getRightExpression()); return hc; }
/** * Get hash code. WARNING: The hash code is based on data in the criteria. * If data values are changed, the hash code will change - don't hash this * object and change values. * @return Hash code */ public int hashCode() { int hc = 0; hc = HashCodeUtil.hashCode(hc, getOperator()); //allow for semantic equivalence hc += HashCodeUtil.hashCode(0, getLeftExpression()); hc += HashCodeUtil.hashCode(0, getRightExpression()); return hc; }
/** * Get hash code. WARNING: The hash code is based on data in the criteria. * If data values are changed, the hash code will change - don't hash this * object and change values. * @return Hash code */ public int hashCode() { int hc = 0; hc = HashCodeUtil.hashCode(hc, getOperator()); //allow for semantic equivalence hc += HashCodeUtil.hashCode(0, getLeftExpression()); hc += HashCodeUtil.hashCode(0, getRightExpression()); return hc; }
public void visit(CompareCriteria compCrit){ if (compCrit.getOperator() == CompareCriteria.EQ && checkForInput(compCrit.getLeftExpression()) && !checkForAnyInput(compCrit.getRightExpression())) { addInputNode((Reference)compCrit.getLeftExpression()); } }
public void visit(CompareCriteria compCrit){ if (compCrit.getOperator() == CompareCriteria.EQ && checkForInput(compCrit.getLeftExpression()) && !checkForAnyInput(compCrit.getRightExpression())) { addInputNode((Reference)compCrit.getLeftExpression()); } }
public void visit(CompareCriteria compCrit){ if (compCrit.getOperator() == CompareCriteria.EQ && checkForInput(compCrit.getLeftExpression()) && !checkForAnyInput(compCrit.getRightExpression())) { addInputNode((Reference)compCrit.getLeftExpression()); } }
org.teiid.language.Comparison translate(CompareCriteria criteria) { Operator operator = Operator.EQ; switch(criteria.getOperator()) { case CompareCriteria.EQ: operator = Operator.EQ; break; case CompareCriteria.NE: operator = Operator.NE; break; case CompareCriteria.LT: operator = Operator.LT; break; case CompareCriteria.LE: operator = Operator.LE; break; case CompareCriteria.GT: operator = Operator.GT; break; case CompareCriteria.GE: operator = Operator.GE; break; } return new org.teiid.language.Comparison(translate(criteria.getLeftExpression()), translate(criteria.getRightExpression()), operator); }
org.teiid.language.Comparison translate(CompareCriteria criteria) { Operator operator = Operator.EQ; switch(criteria.getOperator()) { case CompareCriteria.EQ: operator = Operator.EQ; break; case CompareCriteria.NE: operator = Operator.NE; break; case CompareCriteria.LT: operator = Operator.LT; break; case CompareCriteria.LE: operator = Operator.LE; break; case CompareCriteria.GT: operator = Operator.GT; break; case CompareCriteria.GE: operator = Operator.GE; break; } return new org.teiid.language.Comparison(translate(criteria.getLeftExpression()), translate(criteria.getRightExpression()), operator); }
org.teiid.language.Comparison translate(CompareCriteria criteria) { Operator operator = Operator.EQ; switch(criteria.getOperator()) { case CompareCriteria.EQ: operator = Operator.EQ; break; case CompareCriteria.NE: operator = Operator.NE; break; case CompareCriteria.LT: operator = Operator.LT; break; case CompareCriteria.LE: operator = Operator.LE; break; case CompareCriteria.GT: operator = Operator.GT; break; case CompareCriteria.GE: operator = Operator.GE; break; } return new org.teiid.language.Comparison(translate(criteria.getLeftExpression()), translate(criteria.getRightExpression()), operator); }
/** * Deep copy of object * @return Deep copy of object */ public Object clone() { Expression leftCopy = null; if(getLeftExpression() != null) { leftCopy = (Expression) getLeftExpression().clone(); } Expression rightCopy = null; if(getRightExpression() != null) { rightCopy = (Expression) getRightExpression().clone(); } CompareCriteria result = new CompareCriteria(leftCopy, getOperator(), rightCopy); result.isOptional = isOptional; return result; }
/** * Deep copy of object * @return Deep copy of object */ public Object clone() { Expression leftCopy = null; if(getLeftExpression() != null) { leftCopy = (Expression) getLeftExpression().clone(); } Expression rightCopy = null; if(getRightExpression() != null) { rightCopy = (Expression) getRightExpression().clone(); } CompareCriteria result = new CompareCriteria(leftCopy, getOperator(), rightCopy); result.isOptional = isOptional; return result; }
/** * Deep copy of object * @return Deep copy of object */ public Object clone() { Expression leftCopy = null; if(getLeftExpression() != null) { leftCopy = (Expression) getLeftExpression().clone(); } Expression rightCopy = null; if(getRightExpression() != null) { rightCopy = (Expression) getRightExpression().clone(); } CompareCriteria result = new CompareCriteria(leftCopy, getOperator(), rightCopy); result.isOptional = isOptional; return result; }
private Boolean evaluate(CompareCriteria criteria, List<?> tuple) throws ExpressionEvaluationException, BlockedException, TeiidComponentException { // Evaluate left expression Object leftValue = null; try { leftValue = evaluate(criteria.getLeftExpression(), tuple); } catch(ExpressionEvaluationException e) { throw new ExpressionEvaluationException(QueryPlugin.Event.TEIID30312, e, QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30312, "left", criteria)); //$NON-NLS-1$ } // Shortcut if null if(leftValue == null) { return null; } // Evaluate right expression Object rightValue = null; try { rightValue = evaluate(criteria.getRightExpression(), tuple); } catch(ExpressionEvaluationException e) { throw new ExpressionEvaluationException(QueryPlugin.Event.TEIID30312, e, QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30312, "right", criteria)); //$NON-NLS-1$ } // Shortcut if null if(rightValue == null) { return null; } // Compare two non-null values using specified operator return compare(criteria.getOperator(), leftValue, rightValue); }
private Boolean evaluate(CompareCriteria criteria, List<?> tuple) throws ExpressionEvaluationException, BlockedException, TeiidComponentException { // Evaluate left expression Object leftValue = null; try { leftValue = evaluate(criteria.getLeftExpression(), tuple); } catch(ExpressionEvaluationException e) { throw new ExpressionEvaluationException(QueryPlugin.Event.TEIID30312, e, QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30312, "left", criteria)); //$NON-NLS-1$ } // Shortcut if null if(leftValue == null) { return null; } // Evaluate right expression Object rightValue = null; try { rightValue = evaluate(criteria.getRightExpression(), tuple); } catch(ExpressionEvaluationException e) { throw new ExpressionEvaluationException(QueryPlugin.Event.TEIID30312, e, QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30312, "right", criteria)); //$NON-NLS-1$ } // Shortcut if null if(rightValue == null) { return null; } // Compare two non-null values using specified operator return compare(criteria.getOperator(), leftValue, rightValue); }
private Boolean evaluate(CompareCriteria criteria, List<?> tuple) throws ExpressionEvaluationException, BlockedException, TeiidComponentException { // Evaluate left expression Object leftValue = null; try { leftValue = evaluate(criteria.getLeftExpression(), tuple); } catch(ExpressionEvaluationException e) { throw new ExpressionEvaluationException(QueryPlugin.Event.TEIID30312, e, QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30312, "left", criteria)); //$NON-NLS-1$ } // Shortcut if null if(leftValue == null) { return null; } // Evaluate right expression Object rightValue = null; try { rightValue = evaluate(criteria.getRightExpression(), tuple); } catch(ExpressionEvaluationException e) { throw new ExpressionEvaluationException(QueryPlugin.Event.TEIID30312, e, QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30312, "right", criteria)); //$NON-NLS-1$ } // Shortcut if null if(rightValue == null) { return null; } // Compare two non-null values using specified operator return compare(criteria.getOperator(), leftValue, rightValue); }