Author: ggregory Date: Sat Oct 13 19:05:08 2012 New Revision: 1397927 URL: http://svn.apache.org/viewvc?rev=1397927&view=rev Log: Delimiter is not optional so change back type from Character to char. The side effect is that the "pristine" format must be built with somekind of default (',') seems reasonable. The comment used to say "no settings defined" but that was not true, since false was passed in for two values instead of null. IMO, this is all due to the fluent API making this part of the code a little more tricky.
Modified: commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVFormat.java Modified: commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVFormat.java URL: http://svn.apache.org/viewvc/commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVFormat.java?rev=1397927&r1=1397926&r2=1397927&view=diff ============================================================================== --- commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVFormat.java (original) +++ commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVFormat.java Sat Oct 13 19:05:08 2012 @@ -39,7 +39,7 @@ public class CSVFormat implements Serial private static final long serialVersionUID = 1L; - private final Character delimiter; + private final char delimiter; private final Character encapsulator; private final Character commentStart; private final Character escape; @@ -49,9 +49,9 @@ public class CSVFormat implements Serial private final String[] header; /** - * Starting format with no settings defined; used for creating other formats from scratch. + * Starting format; used for creating other formats. */ - static final CSVFormat PRISTINE = new CSVFormat(null, null, null, null, false, false, null, null); + static final CSVFormat PRISTINE = new CSVFormat(COMMA, null, null, null, false, false, null, null); /** * Standard comma separated format, as for {@link #RFC4180} but allowing blank lines. @@ -143,7 +143,7 @@ public class CSVFormat implements Serial * @param header * the header */ - public CSVFormat(final Character delimiter, final Character encapsulator, final Character commentStart, final Character escape, final + public CSVFormat(final char delimiter, final Character encapsulator, final Character commentStart, final Character escape, final boolean ignoreSurroundingSpaces, final boolean ignoreEmptyLines, final String lineSeparator, final String[] header) { this.delimiter = delimiter; this.encapsulator = encapsulator; @@ -173,10 +173,6 @@ public class CSVFormat implements Serial * @throws IllegalStateException */ void validate() throws IllegalStateException { - if (delimiter == null) { - throw new IllegalStateException("The delimiter character cannot be null"); - } - if (delimiter == encapsulator) { throw new IllegalStateException("The encapsulator character and the delimiter cannot be the same ('" + encapsulator + "')"); }