private static RowMarshaller newInstance()

in c3r-sdk-core/src/main/java/com/amazonaws/c3r/action/CsvRowMarshaller.java [82:110]


    private static RowMarshaller<CsvValue> newInstance(
            @NonNull final String sourceFile,
            @NonNull final String targetFile,
            @NonNull final String tempDir,
            final String inputNullValue,
            final String outputNullValue,
            @NonNull final ClientSettings settings,
            @NonNull final TableSchema schema,
            @NonNull final Map<ColumnType, Transformer> transforms) {
        final RowReader<CsvValue> reader = CsvRowReader.builder().sourceName(sourceFile).inputNullValue(inputNullValue)
                .externalHeaders(schema.getPositionalColumnHeaders()).build();
        final List<ColumnHeader> targetHeaders = schema.getColumns().stream().map(ColumnSchema::getTargetHeader)
                .collect(Collectors.toList());
        final RowWriter<CsvValue> writer = CsvRowWriter.builder()
                .targetName(targetFile)
                .outputNullValue(outputNullValue)
                .headers(targetHeaders)
                .build();
        validate(outputNullValue, schema);
        return RowMarshaller.<CsvValue>builder()
                .settings(settings)
                .schema(schema)
                .tempDir(tempDir)
                .inputReader(reader)
                .valueFactory(new CsvValueFactory())
                .outputWriter(writer)
                .transformers(transforms)
                .build();
    }