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>


Reply via email to