@Override public void run(final InputRow row, final int distinctCount) { final List<Object> result = row.getValues(columns); rows.add(result.toArray(new Object[result.size()])); }
/** * Creates a string with all variable names replaced with dynamic values * coming from the {@link InputRow}'s values. * * @param str * the string to prepare with variables * @param inputRow * the input row containing the dynamic values to insert into the * string * @return */ protected String applyVariablesToString(final String str, final InputRow inputRow) { if (Strings.isNullOrEmpty(str)) { return null; } String result = str; final List<Object> values = inputRow.getValues(input); for (int i = 0; i < input.length; i++) { final Object value = values.get(i); final String valueStr; if (value == null) { valueStr = ""; } else { valueStr = value.toString(); } result = StringUtils.replaceAll(result, variableNames[i], valueStr); } return result; }
@Override public void run(final InputRow row, final int distinctCount) { if (row.getId() % 2 == 0) { final List<Object> values = row.getValues(columns); collector.putValues(values); } }
@Override public void run(final InputRow inputRow) { final Object[] output = new Object[_initializedUnits.length]; for (int i = 0; i < _initializedUnits.length; i++) { final CoalesceUnit unit = _initializedUnits[i]; final InputColumn<?>[] inputColumns = unit.getInputColumns(); final List<Object> values = inputRow.getValues(inputColumns); final Object value = _coalesceFunction.coalesce(values); output[i] = value; } if (logger.isDebugEnabled()) { logger.debug("Fused values for row: {}", Arrays.toString(output)); } _outputRowCollector.putValues(output); }
@Override public Object[] transform(final InputRow inputRow) { final Object[] result = new Object[_initializedUnits.length]; for (int i = 0; i < _initializedUnits.length; i++) { final CoalesceUnit unit = _initializedUnits[i]; final InputColumn<?>[] inputColumns = unit.getInputColumns(); final List<Object> values = inputRow.getValues(inputColumns); final Object value = _coalesceFunction.coalesce(values); result[i] = value; } if (logger.isDebugEnabled()) { logger.debug("Coalesced values for row {}: {}", inputRow.getId(), Arrays.toString(result)); } return result; } }
public void run(InputRow row, int count) { final String group; if (groupColumn == null) { group = GROUP_NAME_SINGLE; } else { group = row.getValue(groupColumn); } final FillPatternsBuilder fillPatternsBuilder = getOrCreateFillPatternsBuilder(group); final List<Object> inspectedValues = row.getValues(inspectedColumns); final List<Object> inspectionOutcomes = new ArrayList<>(inspectionTypes.length); for (int i = 0; i < inspectionTypes.length; i++) { final Object value = inspectedValues.get(i); final InspectionType inspectionType = inspectionTypes[i]; inspectionOutcomes.add(inspectionType.inspect(value)); } fillPatternsBuilder.addObservation(row, inspectionOutcomes); }
public void run(InputRow row, int count) { final String group; if (groupColumn == null) { group = GROUP_NAME_SINGLE; } else { group = row.getValue(groupColumn); } final FillPatternsBuilder fillPatternsBuilder = getOrCreateFillPatternsBuilder(group); final List<Object> inspectedValues = row.getValues(inspectedColumns); final List<Object> inspectionOutcomes = new ArrayList<>(inspectionTypes.length); for (int i = 0; i < inspectionTypes.length; i++) { final Object value = inspectedValues.get(i); final InspectionType inspectionType = inspectionTypes[i]; inspectionOutcomes.add(inspectionType.inspect(value)); } fillPatternsBuilder.addObservation(row, inspectionOutcomes); }
@Override public void run(final InputRow row, final int distinctCount) { _rowCount.addAndGet(distinctCount); boolean allInvalid = true; for (int i = 0; i < _valueColumns.length; i++) { final Object value = row.getValue(_valueColumns[i]); final boolean valid = _conditions[i].isValid(value); if (_evaluationMode == EvaluationMode.ANY_FIELD && !valid) { _annotationFactory.annotate(row, distinctCount, _invalidRecords); if (_incompleteRowCollector != null) { _incompleteRowCollector.putValues(row.getValues(_outputDataStreamColumns).toArray()); } return; } if (valid) { allInvalid = false; } } if (_evaluationMode == EvaluationMode.ALL_FIELDS && allInvalid) { _annotationFactory.annotate(row, distinctCount, _invalidRecords); if (_incompleteRowCollector != null) { _incompleteRowCollector.putValues(row.getValues(_outputDataStreamColumns).toArray()); } return; } if (_completeRowCollector != null) { _completeRowCollector.putValues(row.getValues(_outputDataStreamColumns).toArray()); } }