Example usage for org.apache.commons.csv Quote MINIMAL

List of usage examples for org.apache.commons.csv Quote MINIMAL

Introduction

In this page you can find the example usage for org.apache.commons.csv Quote MINIMAL.

Prototype

Quote MINIMAL

To view the source code for org.apache.commons.csv Quote MINIMAL.

Click Source Link

Document

Quotes fields which contain special characters such as a delimiter, quote character or any of the characters in line separator.

Usage

From source file:net.ageto.gyrex.logback.extensions.csv.CsvPatternLayout.java

@SuppressWarnings("unchecked")
@Override//from www  .  j  a v  a2  s  . co  m
public void start() {
    final CSVFormatBuilder formatBuilder = CSVFormat.newBuilder();

    if (separator != null) {
        if (separator.length() != 1) {
            addError("Invalid separator:'" + separator + "'");
            return;
        }
        formatBuilder.withDelimiter(separator.charAt(0));
    }

    if (newline != null) {
        if (newline.length() == 0) {
            addError("Invalid newline:'" + newline + "'");
            return;
        }
        formatBuilder.withRecordSeparator(newline);
    }

    if (encapsulator != null) {
        if (encapsulator.length() != 1) {
            addError("Invalid encapsulator:'" + encapsulator + "'");
            return;
        }
        formatBuilder.withQuoteChar(encapsulator.charAt(0));
        formatBuilder.withQuotePolicy(Quote.MINIMAL);
    }

    if (escape != null) {
        if (escape.length() != 1) {
            addError("Invalid escape:'" + escape + "'");
            return;
        }
        formatBuilder.withEscape(escape.charAt(0));
        if (encapsulator == null) {
            formatBuilder.withQuotePolicy(Quote.NONE);
        }
    }

    super.start();

    try {
        final Field field = getClass().getDeclaredField("head");
        if (!field.isAccessible()) {
            field.setAccessible(true);
        }
        head = (Converter<ILoggingEvent>) field.get(this);
    } catch (final Exception e) {
        addError("Unable to initialize internal variable", e);
        stop();
        return;
    }

}

From source file:net.ageto.gyrex.logback.extensions.csv.CsvEncoder.java

@Override
public void start() {
    if (fieldPatterns.isEmpty()) {
        addError("No fields defined!");
        return;/*  ww  w.j a v a 2 s  .  co  m*/
    }

    fields = new ArrayList<PatternLayout>(fieldPatterns.size());
    for (final String pattern : fieldPatterns) {
        final PatternLayout layout = new PatternLayout();
        layout.setContext(getContext());
        layout.setPattern(pattern);
        layout.start();
        fields.add(layout);
    }

    final CSVFormatBuilder formatBuilder = CSVFormat.newBuilder();

    if (separator != null) {
        if (separator.length() != 1) {
            addError("Invalid separator:'" + separator + "'");
            return;
        }
        formatBuilder.withDelimiter(separator.charAt(0));
    }

    if (newline != null) {
        if (newline.length() == 0) {
            addError("Invalid newline:'" + newline + "'");
            return;
        }
        formatBuilder.withRecordSeparator(newline);
    }

    if (encapsulator != null) {
        if (encapsulator.length() != 1) {
            addError("Invalid encapsulator:'" + encapsulator + "'");
            return;
        }
        formatBuilder.withQuoteChar(encapsulator.charAt(0));
        formatBuilder.withQuotePolicy(Quote.MINIMAL);
    }

    if (escape != null) {
        if (escape.length() != 1) {
            addError("Invalid escape:'" + escape + "'");
            return;
        }
        formatBuilder.withEscape(escape.charAt(0));
        if (encapsulator == null) {
            formatBuilder.withQuotePolicy(Quote.NONE);
        }
    }

    csvFormat = formatBuilder.build();

    super.start();
}