private void addMatchColumns(final OutputColumns outputColumns) { final int count = outputColumns.getColumnCount(); for (int i = 0; i < count; i++) { final String columnName = outputColumns.getColumnName(i); final InputColumn<Boolean> col = new MockInputColumn<>(columnName, Boolean.class); _matchColumns.add(col); } }
private String getColumnName(final OutputColumns outputColumns, final int index) { String name = outputColumns.getColumnName(index); if (name == null) { name = getDescriptor().getDisplayName() + " (" + (index + 1) + ")"; } return name; }
private JsonNode getOutputJsonNode(ComponentHandler handler, Collection<List<Object[]>> data, OutputStyle outputFormat) { if(outputFormat == OutputStyle.MAP) { org.datacleaner.api.OutputColumns columns = handler.getOutputColumns(); int columnCount = columns.getColumnCount(); List<List<Map<String, Object>>> mapStyleOutput = new ArrayList<>(data.size()); for(List<Object[]> rowGroup: data) { List<Map<String, Object>> columnMapRowGroup = new ArrayList<>(rowGroup.size()); for(Object[] row: rowGroup) { Map<String, Object> columMapRow = new HashMap<>(columnCount); for(int i = 0; i < columnCount; i++) { columMapRow.put(columns.getColumnName(i), row[i]); } columnMapRowGroup.add(columMapRow); } mapStyleOutput.add(columnMapRowGroup); } return getJsonNode(mapStyleOutput); } else { return getJsonNode(data); } }
private OutputColumns createOutputColumns(org.datacleaner.api.OutputColumns outCols) { OutputColumns outColsResult = new OutputColumns(); for (int i = 0; i < outCols.getColumnCount(); i++) { SchemaFactoryWrapper visitor = new SchemaFactoryWrapper(); try { ComponentHandler.mapper.acceptJsonFormatVisitor(outCols.getColumnType(i), visitor); } catch (JsonMappingException e) { throw new RuntimeException(e); } outColsResult.add(outCols.getColumnName(i), outCols.getColumnType(i), visitor.finalSchema()); } return outColsResult; }
final MutableInputColumn<?> column = _outputColumns.get(i); final String previousProposedName = column.getInitialName(); final String newProposedName = outputColumns.getColumnName(i); if (newProposedName != null && !newProposedName.equals(previousProposedName)) { column.setName(newProposedName);