Example usage for com.fasterxml.jackson.dataformat.csv CsvSchema column

List of usage examples for com.fasterxml.jackson.dataformat.csv CsvSchema column

Introduction

In this page you can find the example usage for com.fasterxml.jackson.dataformat.csv CsvSchema column.

Prototype

public Column column(String name) 

Source Link

Usage

From source file:io.github.binout.jaxrs.csv.CsvSchemaFactory.java

static CsvSchema buildSchema(CsvMapper mapper, Class csvClass) {
    CsvAnnotationIntrospector introspector = new CsvAnnotationIntrospector(csvClass);
    char separatorChar = introspector.separator();
    Optional<String[]> columns = introspector.columns();

    CsvSchema csvSchema = mapper.schemaFor(csvClass).withColumnSeparator(separatorChar)
            .withSkipFirstDataRow(introspector.skipFirstDataRow());
    if (columns.isPresent()) {
        // Rebuild columns to take account of order
        CsvSchema.Builder builder = csvSchema.rebuild().clearColumns();
        for (String column : columns.get()) {
            CsvSchema.Column oldColumn = csvSchema.column(column);
            builder.addColumn(column, oldColumn.getType());
        }//  ww w .  ja v a  2s .  c om
        csvSchema = builder.build();
    }

    return csvSchema;
}

From source file:ro.fortsoft.dataset.csv.CsvDataSet.java

protected DataSetMetaData createDefaultMetaData() {
    BaseDataSetMetaData metaData = new BaseDataSetMetaData();

    rows = createMappingIterator(inputStream);
    CsvSchema parserSchema = (CsvSchema) rows.getParserSchema();
    int columnCount = parserSchema.size();
    for (int i = 0; i < columnCount; i++) {
        CsvSchema.Column column = parserSchema.column(i);
        CsvSchema.ColumnType columnType = column.getType();
        metaData.addField(column.getName(), columnType.getClass(), column.getIndex());
    }/*www.  jav a 2 s . c o  m*/

    return metaData;
}