Author: hadrian
Date: Wed May 16 18:20:19 2012
New Revision: 1339299

URL: http://svn.apache.org/viewvc?rev=1339299&view=rev
Log:
CAMEL-5279. Open file in append mode in camel-stream

Modified:
    
camel/branches/camel-2.8.x/components/camel-stream/src/main/java/org/apache/camel/component/stream/StreamProducer.java
    
camel/branches/camel-2.8.x/components/camel-stream/src/test/java/org/apache/camel/component/stream/StreamFileTest.java

Modified: 
camel/branches/camel-2.8.x/components/camel-stream/src/main/java/org/apache/camel/component/stream/StreamProducer.java
URL: 
http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-stream/src/main/java/org/apache/camel/component/stream/StreamProducer.java?rev=1339299&r1=1339298&r2=1339299&view=diff
==============================================================================
--- 
camel/branches/camel-2.8.x/components/camel-stream/src/main/java/org/apache/camel/component/stream/StreamProducer.java
 (original)
+++ 
camel/branches/camel-2.8.x/components/camel-stream/src/main/java/org/apache/camel/component/stream/StreamProducer.java
 Wed May 16 18:20:19 2012
@@ -93,7 +93,7 @@ public class StreamProducer extends Defa
         File f = new File(fileName);
         // will create a new file if missing or append to existing
         f.createNewFile();
-        return new FileOutputStream(f);
+        return new FileOutputStream(f, true);
     }
 
     private OutputStream resolveStreamFromHeader(Object o, Exchange exchange) 
throws CamelExchangeException {

Modified: 
camel/branches/camel-2.8.x/components/camel-stream/src/test/java/org/apache/camel/component/stream/StreamFileTest.java
URL: 
http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-stream/src/test/java/org/apache/camel/component/stream/StreamFileTest.java?rev=1339299&r1=1339298&r2=1339299&view=diff
==============================================================================
--- 
camel/branches/camel-2.8.x/components/camel-stream/src/test/java/org/apache/camel/component/stream/StreamFileTest.java
 (original)
+++ 
camel/branches/camel-2.8.x/components/camel-stream/src/test/java/org/apache/camel/component/stream/StreamFileTest.java
 Wed May 16 18:20:19 2012
@@ -23,6 +23,7 @@ import org.apache.camel.Consumer;
 import org.apache.camel.Endpoint;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
+import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.Before;
@@ -79,4 +80,27 @@ public class StreamFileTest extends Came
         }
     }
 
+    @Test
+    public void testFileProducer() throws Exception {
+        MockEndpoint mock = getMockEndpoint("mock:result");
+        mock.expectedBodiesReceived("Hadrian", "Camel");
+        
+        context.addRoutes(new RouteBuilder() {
+            @Override
+            public void configure() throws Exception {
+                from("direct:start").routeId("produce")
+                    
.to("stream:file?fileName=target/stream/StreamFileTest.txt");
+                
from("file://target/stream?fileName=StreamFileTest.txt").routeId("consume").autoStartup(false)
+                    .split().tokenize("\n").to("mock:result");
+            }
+        });
+        context.start();
+
+        template.sendBody("direct:start", "Hadrian");
+        template.sendBody("direct:start", "Camel");
+        
+        context.startRoute("consume");
+        assertMockEndpointsSatisfied();
+        context.stop();
+    }
 }
\ No newline at end of file


Reply via email to