// from Operator @Override public List<String> process(List<String> tuple) { _numTuplesProcessed++; if (_distinct != null) { tuple = _distinct.process(tuple); if (tuple == null) { return null; } } String tupleHash; if (_groupByType == GB_PROJECTION) { tupleHash = MyUtilities.createHashString( tuple, _groupByColumns, _groupByProjection.getExpressions(), _map); } else { tupleHash = MyUtilities.createHashString(tuple, _groupByColumns, _map); } T value = _storage.update(tuple, tupleHash); String strValue = _wrapper.toString(value); // propagate further the affected tupleHash-tupleValue pair List<String> affectedTuple = new ArrayList<String>(); affectedTuple.add(tupleHash); affectedTuple.add(strValue); return affectedTuple; }
@Override public String evalString(List<String> tuple) { T result = eval(tuple); return _wrapper.toString(result); }