Author: jstrachan
Date: Mon Jul 14 10:54:20 2008
New Revision: 676662
URL: http://svn.apache.org/viewvc?rev=676662&view=rev
Log:
added support for delimited without an XML descriptor for CAMEL-717
Added:
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProducer.java
(contents, props changed)
- copied, changed from r676643,
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProcessor.java
activemq/camel/trunk/components/camel-flatpack/src/test/data/delim2/
activemq/camel/trunk/components/camel-flatpack/src/test/data/delim2/foo.csv
activemq/camel/trunk/components/camel-flatpack/src/test/java/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest.java
- copied, changed from r676659,
activemq/camel/trunk/components/camel-flatpack/src/test/java/org/apache/camel/component/flatpack/DelimitedTest.java
activemq/camel/trunk/components/camel-flatpack/src/test/resources/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest-context.xml
- copied, changed from r676659,
activemq/camel/trunk/components/camel-flatpack/src/test/resources/org/apache/camel/component/flatpack/DelimitedTest-context.xml
Removed:
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProcessor.java
activemq/camel/trunk/components/camel-flatpack/src/main/resources/META-INF/services/org/apache/camel/component/fp-delim
Modified:
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/DelimitedEndpoint.java
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FixedLengthEndpoint.java
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackComponent.java
Modified:
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/DelimitedEndpoint.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/DelimitedEndpoint.java?rev=676662&r1=676661&r2=676662&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/DelimitedEndpoint.java
(original)
+++
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/DelimitedEndpoint.java
Mon Jul 14 10:54:20 2008
@@ -43,9 +43,11 @@
Reader bodyReader = ExchangeHelper.getMandatoryInBody(exchange,
Reader.class);
Resource resource = getResource();
if (resource == null) {
- return getParserFactory().newDelimitedParser(new
InputStreamReader(resource.getInputStream()), delimiter, textQualifier);
+ return getParserFactory().newDelimitedParser(bodyReader,
delimiter, textQualifier);
+ }
+ else {
+ return getParserFactory().newDelimitedParser(new
InputStreamReader(resource.getInputStream()), bodyReader, delimiter,
textQualifier, ignoreFirstRecord);
}
- return createParser(resource, bodyReader);
}
@@ -76,11 +78,4 @@
this.textQualifier = textQualifier;
}
- // Implementation methods
- //-------------------------------------------------------------------------
-
- @Override
- protected Parser createParser(Resource resource, Reader bodyReader) throws
IOException {
- return getParserFactory().newDelimitedParser(new
InputStreamReader(resource.getInputStream()), bodyReader, delimiter,
textQualifier, ignoreFirstRecord);
- }
}
Modified:
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FixedLengthEndpoint.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FixedLengthEndpoint.java?rev=676662&r1=676661&r2=676662&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FixedLengthEndpoint.java
(original)
+++
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FixedLengthEndpoint.java
Mon Jul 14 10:54:20 2008
@@ -55,7 +55,7 @@
}
public Producer<Exchange> createProducer() throws Exception {
- return new FlatpackProcessor(this);
+ return new FlatpackProducer(this);
}
public Consumer<Exchange> createConsumer(Processor processor) throws
Exception {
Modified:
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackComponent.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackComponent.java?rev=676662&r1=676661&r2=676662&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackComponent.java
(original)
+++
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackComponent.java
Mon Jul 14 10:54:20 2008
@@ -39,6 +39,10 @@
remaining = remaining.substring("fixed:".length());
} else if (remaining.startsWith("delim:")) {
remaining = remaining.substring("delim:".length());
+ } else {
+ // lets assume the rest of the string is just a name
+ // to differentiate different named delimited endpoints
+ remaining = "";
}
Resource resource = null;
if (fixed) {
Copied:
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProducer.java
(from r676643,
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProcessor.java)
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProducer.java?p2=activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProducer.java&p1=activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProcessor.java&r1=676643&r2=676662&rev=676662&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProcessor.java
(original)
+++
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProducer.java
Mon Jul 14 10:54:20 2008
@@ -25,10 +25,10 @@
/**
* @version $Revision: 1.1 $
*/
-class FlatpackProcessor extends DefaultProducer<Exchange> {
+class FlatpackProducer extends DefaultProducer<Exchange> {
private FixedLengthEndpoint endpoint;
- public FlatpackProcessor(FixedLengthEndpoint endpoint) {
+ public FlatpackProducer(FixedLengthEndpoint endpoint) {
super(endpoint);
this.endpoint = endpoint;
}
Propchange:
activemq/camel/trunk/components/camel-flatpack/src/main/java/org/apache/camel/component/flatpack/FlatpackProducer.java
------------------------------------------------------------------------------
svn:eol-style = native
Added:
activemq/camel/trunk/components/camel-flatpack/src/test/data/delim2/foo.csv
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-flatpack/src/test/data/delim2/foo.csv?rev=676662&view=auto
==============================================================================
--- activemq/camel/trunk/components/camel-flatpack/src/test/data/delim2/foo.csv
(added)
+++ activemq/camel/trunk/components/camel-flatpack/src/test/data/delim2/foo.csv
Mon Jul 14 10:54:20 2008
@@ -0,0 +1,3 @@
+"NAME","LOCATION"
+"James", "London"
+"Claus", "Austria"
\ No newline at end of file
Copied:
activemq/camel/trunk/components/camel-flatpack/src/test/java/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest.java
(from r676659,
activemq/camel/trunk/components/camel-flatpack/src/test/java/org/apache/camel/component/flatpack/DelimitedTest.java)
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-flatpack/src/test/java/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest.java?p2=activemq/camel/trunk/components/camel-flatpack/src/test/java/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest.java&p1=activemq/camel/trunk/components/camel-flatpack/src/test/java/org/apache/camel/component/flatpack/DelimitedTest.java&r1=676659&r2=676662&rev=676662&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-flatpack/src/test/java/org/apache/camel/component/flatpack/DelimitedTest.java
(original)
+++
activemq/camel/trunk/components/camel-flatpack/src/test/java/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest.java
Mon Jul 14 10:54:20 2008
@@ -34,16 +34,16 @@
* @version $Revision: 1.1 $
*/
@ContextConfiguration
-public class DelimitedTest extends AbstractJUnit38SpringContextTests {
+public class DelimitedWithNoDescriptorTest extends
AbstractJUnit38SpringContextTests {
private static final transient Log LOG =
LogFactory.getLog(FixedLengthTest.class);
@EndpointInject(uri = "mock:results")
protected MockEndpoint results;
- protected String[] expectedItemDesc = {"SOME VALVE", "AN ENGINE", "A
BELT", "A BOLT"};
+ protected String[] expectedItemDesc = {"James", "Claus"};
public void testCamel() throws Exception {
- results.expectedMessageCount(4);
+ results.expectedMessageCount(2);
results.assertIsSatisfied();
int counter = 0;
@@ -52,7 +52,7 @@
Message in = exchange.getIn();
Map body = in.getBody(Map.class);
assertNotNull("Should have found body as a Map but was: " +
ObjectHelper.className(in.getBody()), body);
- assertEquals("ITEM_DESC", expectedItemDesc[counter],
body.get("ITEM_DESC"));
+ assertEquals("NAME", expectedItemDesc[counter], body.get("NAME"));
LOG.info("Result: " + counter + " = " + body);
counter++;
}
Copied:
activemq/camel/trunk/components/camel-flatpack/src/test/resources/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest-context.xml
(from r676659,
activemq/camel/trunk/components/camel-flatpack/src/test/resources/org/apache/camel/component/flatpack/DelimitedTest-context.xml)
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-flatpack/src/test/resources/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest-context.xml?p2=activemq/camel/trunk/components/camel-flatpack/src/test/resources/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest-context.xml&p1=activemq/camel/trunk/components/camel-flatpack/src/test/resources/org/apache/camel/component/flatpack/DelimitedTest-context.xml&r1=676659&r2=676662&rev=676662&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-flatpack/src/test/resources/org/apache/camel/component/flatpack/DelimitedTest-context.xml
(original)
+++
activemq/camel/trunk/components/camel-flatpack/src/test/resources/org/apache/camel/component/flatpack/DelimitedWithNoDescriptorTest-context.xml
Mon Jul 14 10:54:20 2008
@@ -25,12 +25,12 @@
<!-- START SNIPPET: example -->
<camelContext xmlns="http://activemq.apache.org/camel/schema/spring">
<route>
- <from uri="file://src/test/data/delim?noop=true"/>
- <to uri="flatpack:delim:INVENTORY-Delimited.pzmap.xml"/>
+ <from uri="file://src/test/data/delim2?noop=true"/>
+ <to uri="flatpack:foo"/>
</route>
<route>
- <from uri="flatpack:delim:INVENTORY-Delimited.pzmap.xml"/>
+ <from uri="flatpack:foo"/>
<convertBodyTo type="java.util.Map"/>
<to uri="mock:results"/>
</route>