Updated Branches: refs/heads/camel-2.10.x 5674b9f3b -> 78d10b6ec refs/heads/camel-2.11.x 2d5929fd3 -> 2344ec3f0 refs/heads/master 0cad912e0 -> 7078d8bcd
CAMEL-6456: Setting delimiter on camel-csv made consistent. Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/7078d8bc Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/7078d8bc Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/7078d8bc Branch: refs/heads/master Commit: 7078d8bcd642203d70e5adc108f4e020997e1de8 Parents: 0cad912 Author: Claus Ibsen <[email protected]> Authored: Fri Jun 14 08:24:58 2013 +0200 Committer: Claus Ibsen <[email protected]> Committed: Fri Jun 14 08:24:58 2013 +0200 ---------------------------------------------------------------------- .../org/apache/camel/dataformat/csv/CsvDataFormat.java | 12 +++++++----- .../dataformat/csv/CsvUnmarshalPipeDelimiterTest.java | 9 +-------- 2 files changed, 8 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/7078d8bc/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java ---------------------------------------------------------------------- diff --git a/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java b/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java index aa511ae..9ad7b53 100644 --- a/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java +++ b/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java @@ -76,7 +76,7 @@ public class CsvDataFormat implements DataFormat { doMarshalRecord(exchange, row, out, csv); } } finally { - out.close(); + IOHelper.close(out); } } @@ -90,11 +90,13 @@ public class CsvDataFormat implements DataFormat { } public Object unmarshal(Exchange exchange, InputStream inputStream) throws Exception { - InputStreamReader in = new InputStreamReader(inputStream, IOHelper.getCharsetName(exchange)); if (delimiter != null) { - strategy.setDelimiter(delimiter.charAt(0)); + config.setDelimiter(delimiter.charAt(0)); } - + strategy.setDelimiter(config.getDelimiter()); + + InputStreamReader in = new InputStreamReader(inputStream, IOHelper.getCharsetName(exchange)); + try { CSVParser parser = new CSVParser(in, strategy); List<List<String>> list = new ArrayList<List<String>>(); @@ -116,7 +118,7 @@ public class CsvDataFormat implements DataFormat { } return list; } finally { - in.close(); + IOHelper.close(in); } } http://git-wip-us.apache.org/repos/asf/camel/blob/7078d8bc/components/camel-csv/src/test/java/org/apache/camel/dataformat/csv/CsvUnmarshalPipeDelimiterTest.java ---------------------------------------------------------------------- diff --git a/components/camel-csv/src/test/java/org/apache/camel/dataformat/csv/CsvUnmarshalPipeDelimiterTest.java b/components/camel-csv/src/test/java/org/apache/camel/dataformat/csv/CsvUnmarshalPipeDelimiterTest.java index 2a281d6..2a2c2e2 100644 --- a/components/camel-csv/src/test/java/org/apache/camel/dataformat/csv/CsvUnmarshalPipeDelimiterTest.java +++ b/components/camel-csv/src/test/java/org/apache/camel/dataformat/csv/CsvUnmarshalPipeDelimiterTest.java @@ -22,7 +22,6 @@ import org.apache.camel.EndpointInject; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.test.junit4.CamelTestSupport; -import org.apache.commons.csv.CSVStrategy; import org.junit.Test; /** @@ -75,13 +74,7 @@ public class CsvUnmarshalPipeDelimiterTest extends CamelTestSupport { @Override public void configure() throws Exception { CsvDataFormat csv = new CsvDataFormat(); - CSVStrategy strategy = CSVStrategy.DEFAULT_STRATEGY; - strategy.setDelimiter('|'); - csv.setStrategy(strategy); - - // also possible - // CsvDataFormat csv = new CsvDataFormat(); - // csv.setDelimiter("|"); + csv.setDelimiter("|"); from("direct:start").unmarshal(csv) .to("mock:result");
