@Override public List<?> get(int index) { if (index < 0 || index >= size()) { throw new IndexOutOfBoundsException(String.valueOf(index)); } try { return tb.getBatch(index+1).getTuple(index+1); } catch (TeiidComponentException e) { throw new TeiidRuntimeException(QueryPlugin.Event.TEIID30483, e); } }
item.setSubquery(translate(withQueryCommand.getCommand())); } else { item.setDependentValues(new TupleBufferList(withQueryCommand.getTupleBuffer()));
item.setSubquery(translate(withQueryCommand.getCommand())); } else { item.setDependentValues(new TupleBufferList(withQueryCommand.getTupleBuffer()));
item.setSubquery(translate(withQueryCommand.getCommand())); } else { item.setDependentValues(new TupleBufferList(withQueryCommand.getTupleBuffer()));
org.teiid.language.Comparison translate(DependentSetCriteria criteria) { Operator operator = Operator.EQ; org.teiid.language.Expression arg = null; final TupleBuffer tb = criteria.getDependentValueSource().getTupleBuffer(); if (criteria.getValueExpression() instanceof Array) { Array array = (Array)criteria.getValueExpression(); List<org.teiid.language.Expression> params = new ArrayList<org.teiid.language.Expression>(); Class<?> baseType = null; for (Expression ex : array.getExpressions()) { if (baseType == null) { baseType = ex.getType(); } else if (!baseType.equals(ex.getType())) { baseType = DataTypeManager.DefaultDataClasses.OBJECT; } params.add(createParameter(criteria, tb, ex)); } arg = new org.teiid.language.Array(baseType, params); } else { Expression ex = criteria.getValueExpression(); arg = createParameter(criteria, tb, ex); } if (this.dependentSets == null) { this.dependentSets = new HashMap<String, List<? extends List<?>>>(); } this.dependentSets.put(criteria.getContextSymbol(), new TupleBufferList(tb)); Comparison result = new org.teiid.language.Comparison(translate(criteria.getExpression()), arg, operator); return result; }
org.teiid.language.Comparison translate(DependentSetCriteria criteria) { Operator operator = Operator.EQ; org.teiid.language.Expression arg = null; final TupleBuffer tb = criteria.getDependentValueSource().getTupleBuffer(); if (criteria.getValueExpression() instanceof Array) { Array array = (Array)criteria.getValueExpression(); List<org.teiid.language.Expression> params = new ArrayList<org.teiid.language.Expression>(); Class<?> baseType = null; for (Expression ex : array.getExpressions()) { if (baseType == null) { baseType = ex.getType(); } else if (!baseType.equals(ex.getType())) { baseType = DataTypeManager.DefaultDataClasses.OBJECT; } params.add(createParameter(criteria, tb, ex)); } arg = new org.teiid.language.Array(baseType, params); } else { Expression ex = criteria.getValueExpression(); arg = createParameter(criteria, tb, ex); } if (this.dependentSets == null) { this.dependentSets = new HashMap<String, List<? extends List<?>>>(); } this.dependentSets.put(criteria.getContextSymbol(), new TupleBufferList(tb)); Comparison result = new org.teiid.language.Comparison(translate(criteria.getExpression()), arg, operator); return result; }
org.teiid.language.Comparison translate(DependentSetCriteria criteria) { Operator operator = Operator.EQ; org.teiid.language.Expression arg = null; final TupleBuffer tb = criteria.getDependentValueSource().getTupleBuffer(); if (criteria.getValueExpression() instanceof Array) { Array array = (Array)criteria.getValueExpression(); List<org.teiid.language.Expression> params = new ArrayList<org.teiid.language.Expression>(); Class<?> baseType = null; for (Expression ex : array.getExpressions()) { if (baseType == null) { baseType = ex.getType(); } else if (!baseType.equals(ex.getType())) { baseType = DataTypeManager.DefaultDataClasses.OBJECT; } params.add(createParameter(criteria, tb, ex)); } arg = new org.teiid.language.Array(baseType, params); } else { Expression ex = criteria.getValueExpression(); arg = createParameter(criteria, tb, ex); } if (this.dependentSets == null) { this.dependentSets = new HashMap<String, List<? extends List<?>>>(); } this.dependentSets.put(criteria.getContextSymbol(), new TupleBufferList(tb)); Comparison result = new org.teiid.language.Comparison(translate(criteria.getExpression()), arg, operator); return result; }
@Override public List<?> get(int index) { if (index < 0 || index >= size()) { throw new IndexOutOfBoundsException(String.valueOf(index)); } try { return tb.getBatch(index+1).getTuple(index+1); } catch (TeiidComponentException e) { throw new TeiidRuntimeException(QueryPlugin.Event.TEIID30483, e); } }
@Override public List<?> get(int index) { if (index < 0 || index >= size()) { throw new IndexOutOfBoundsException(String.valueOf(index)); } try { return tb.getBatch(index+1).getTuple(index+1); } catch (TeiidComponentException e) { throw new TeiidRuntimeException(QueryPlugin.Event.TEIID30483, e); } }