public void setDimensionValue(String fieldName, String fieldValue) { setDimensionValue(info.getFieldIndex(fieldName), fieldValue); }
@Override public ITuple makeCopy() { Tuple ret = new Tuple(this.info); for (int i = 0; i < this.values.length; ++i) { ret.values[i] = this.values[i]; } return ret; }
@Override public void fillTuple(Tuple tuple, int row) { tuple.setDimensionValue(extendedColumnInTupleIdx, value); } };
@Override public void close() { for (ITupleIterator i : backends) { i.close(); } }
public void setMeasureValue(String fieldName, Object fieldValue) { setMeasureValue(info.getFieldIndex(fieldName), fieldValue); }
@Override public String toString() { StringBuilder sb = new StringBuilder(); for (String field : info.getAllFields()) { sb.append(field); sb.append("="); sb.append(getValue(field)); sb.append(","); } return sb.toString(); }
public Object getValue(TblColRef col) { int index = info.getColumnIndex(col); return values[index]; }
public void setDimensionValue(int idx, String fieldValue) { Object objectValue = convertOptiqCellValue(fieldValue, getDataTypeName(idx)); values[idx] = objectValue; }
public HiveEnumerator(OLAPContext olapContext) { this.olapContext = olapContext; this.current = new Object[olapContext.returnTupleInfo.size()]; }
public Object getValue(String fieldName) { int index = info.getFieldIndex(fieldName); return values[index]; }
/** The simple filling mode, one tuple per storage record. */ public void fillTupleSimply(Tuple tuple, int indexInTuple, Object measureValue) { tuple.setMeasureValue(indexInTuple, measureValue); }
public List<TblColRef> getAllColumns() { return info.getAllColumns(); }
public String getFieldName(TblColRef col) { return info.getFieldName(col); }
@Override public boolean evaluate(IEvaluatableTuple tuple, IFilterCodeSystem<?> cs) { this.tupleValue = tuple.getValue(columnRef); return true; }
@Override public Object clone() { return makeCopy(); }
public String getDataTypeName(int idx) { return info.getDataTypeName(idx); }
@Override public void close() { if (cursor != null) cursor.close(); }
@Override public void fillDerivedColumns(Object[] gtValues, Tuple tuple) { // composite keys are split, so only copy [0] is enough, see CubeDesc.initDimensionColumns() tuple.setDimensionValue(derivedTupleIdx[0], CubeTupleConverter.toString(gtValues[hostTmpIdx[0]])); } };
public Tuple(TupleInfo info) { this.info = info; this.values = new Object[info.size()]; }
@Override public Object calculate(IEvaluatableTuple tuple, IFilterCodeSystem<?> cs) { return tuple.getValue(columnRef); }