Author: ningjiang
Date: Fri Aug 29 04:12:18 2008
New Revision: 690184

URL: http://svn.apache.org/viewvc?rev=690184&view=rev
Log:
CAMEL-520 CAMEL-782 CAMEL-858 clean up codes

Modified:
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/log/LogFormatter.java
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCache.java
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/interceptor/TraceFormatter.java
    
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/issues/CacheInputStreamInDeadLetterIssue520Test.java

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/log/LogFormatter.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/log/LogFormatter.java?rev=690184&r1=690183&r2=690184&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/log/LogFormatter.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/log/LogFormatter.java
 Fri Aug 29 04:12:18 2008
@@ -21,7 +21,6 @@
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
 import org.apache.camel.converter.stream.StreamCache;
-import org.apache.camel.converter.stream.StreamCacheConverter.InputStreamCache;
 import org.apache.camel.processor.interceptor.ExchangeFormatter;
 import org.apache.camel.util.ObjectHelper;
 
@@ -177,22 +176,18 @@
     // Implementation methods
     //-------------------------------------------------------------------------
     protected Object getBodyAsString(Message message) {
-        Object newBody = null;
-        InputStreamCache cache = null;
-        if (message.getBody() instanceof InputStream) {
-            newBody = message.getBody(StreamCache.class);
-            if (newBody != null) {
-                cache = (InputStreamCache) newBody;
-                message.setBody(cache);
-            }
+
+        StreamCache newBody = message.getBody(StreamCache.class);
+        if (newBody != null) {
+            message.setBody(newBody);
         }
         Object answer = message.getBody(String.class);
         if (answer == null) {
             answer = message.getBody();
         }
-        if (cache != null) {
-            // Reset the inputStreamCache
-            cache.reset();
+        if (newBody != null) {
+            // Reset the StreamCache
+            newBody.reset();
         }
         return answer;
     }

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCache.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCache.java?rev=690184&r1=690183&r2=690184&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCache.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCache.java
 Fri Aug 29 04:12:18 2008
@@ -32,6 +32,6 @@
     /**
      * Resets the StreamCache for a new stream consumption.
      */
-    void reset() throws IOException;
+    void reset();
 
 }

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java?rev=690184&r1=690183&r2=690184&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java
 Fri Aug 29 04:12:18 2008
@@ -30,6 +30,9 @@
 import org.apache.camel.converter.IOConverter;
 import org.apache.camel.converter.jaxp.StringSource;
 import org.apache.camel.converter.jaxp.XmlConverter;
+import org.apache.camel.processor.interceptor.Debugger;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 
 /**
  * A set of [EMAIL PROTECTED] Converter} methods for wrapping stream-based 
messages in a [EMAIL PROTECTED] StreamCache}
@@ -37,6 +40,7 @@
  */
 @Converter
 public class StreamCacheConverter {
+    private static final transient Log LOG = 
LogFactory.getLog(StreamCacheConverter.class);
 
     private XmlConverter converter = new XmlConverter();
 
@@ -55,7 +59,7 @@
         return new ReaderCache(IOConverter.toString(reader));
     }
 
-    public class StreamSourceCache extends StringSource implements StreamCache 
{
+    private class StreamSourceCache extends StringSource implements 
StreamCache {
 
         private static final long serialVersionUID = 4147248494104812945L;
 
@@ -69,7 +73,7 @@
 
     }
 
-    public class InputStreamCache extends ByteArrayInputStream implements 
StreamCache {
+    private class InputStreamCache extends ByteArrayInputStream implements 
StreamCache {
 
         public InputStreamCache(byte[] data) {
             super(data);
@@ -77,12 +81,20 @@
 
     }
 
-    public class ReaderCache extends StringReader implements StreamCache {
+    private class ReaderCache extends StringReader implements StreamCache {
 
         public ReaderCache(String s) {
             super(s);
         }
 
+        public void reset() {
+            try {
+                super.reset();
+            } catch (IOException e) {
+                LOG.warn("Exception is thrown when resets the ReaderCache", e);
+            }
+        }
+
         public void close() {
             // Do not release the string for caching
         }

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java?rev=690184&r1=690183&r2=690184&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java
 Fri Aug 29 04:12:18 2008
@@ -29,7 +29,6 @@
 import org.apache.camel.Message;
 import org.apache.camel.Processor;
 import org.apache.camel.converter.stream.StreamCache;
-import org.apache.camel.converter.stream.StreamCacheConverter.InputStreamCache;
 import org.apache.camel.impl.converter.AsyncProcessorTypeConverter;
 import org.apache.camel.model.ExceptionType;
 import org.apache.camel.processor.exceptionpolicy.ExceptionPolicyStrategy;

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/interceptor/TraceFormatter.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/interceptor/TraceFormatter.java?rev=690184&r1=690183&r2=690184&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/interceptor/TraceFormatter.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/interceptor/TraceFormatter.java
 Fri Aug 29 04:12:18 2008
@@ -22,7 +22,6 @@
 import org.apache.camel.Message;
 import org.apache.camel.converter.stream.StreamCache;
 import org.apache.camel.converter.stream.StreamCacheConverter;
-import org.apache.camel.converter.stream.StreamCacheConverter.InputStreamCache;
 import org.apache.camel.spi.UnitOfWork;
 import org.apache.camel.util.ObjectHelper;
 
@@ -117,22 +116,18 @@
     }
 
     protected Object getBodyAsString(Message in) {
-        Object newBody = null;
-        InputStreamCache cache = null;
-        if (in.getBody() instanceof InputStream) {
-            newBody = in.getBody(StreamCache.class);
-            if (newBody != null) {
-                cache = (InputStreamCache) newBody;
-                in.setBody(cache);
-            }
+
+        StreamCache newBody = in.getBody(StreamCache.class);
+        if (newBody != null) {
+            in.setBody(newBody);
         }
         Object answer = in.getBody(String.class);
         if (answer == null) {
             answer = in.getBody();
         }
-        if (cache != null) {
+        if (newBody != null) {
             // Reset the InputStreamCache
-            cache.reset();
+            newBody.reset();
         }
         return answer;
     }

Modified: 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/issues/CacheInputStreamInDeadLetterIssue520Test.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/issues/CacheInputStreamInDeadLetterIssue520Test.java?rev=690184&r1=690183&r2=690184&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/issues/CacheInputStreamInDeadLetterIssue520Test.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/issues/CacheInputStreamInDeadLetterIssue520Test.java
 Fri Aug 29 04:12:18 2008
@@ -18,6 +18,7 @@
 package org.apache.camel.issues;
 
 import java.io.ByteArrayInputStream;
+import java.io.InputStream;
 import java.io.StringReader;
 
 import javax.xml.transform.stream.StreamSource;
@@ -32,32 +33,31 @@
     private int count;
 
     public void testSendingInputStream() throws Exception {
-        count = 0;
-        MockEndpoint mock = getMockEndpoint("mock:error");
-        mock.expectedMessageCount(1);
 
-        template.sendBody("direct:start", new 
ByteArrayInputStream("<hello>Willem</hello>".getBytes()));
-        assertEquals("The message should be delivered 4 times", count, 4);
-        mock.assertIsSatisfied();
+        InputStream message = new 
ByteArrayInputStream("<hello>Willem</hello>".getBytes());
+
+        sendingMessage(message);
 
     }
 
     public void testSendingReader() throws Exception {
-        count = 0;
-        MockEndpoint mock = getMockEndpoint("mock:error");
-        mock.expectedMessageCount(1);
 
-        template.sendBody("direct:start", new 
StringReader("<hello>Willem</hello>"));
-        assertEquals("The message should be delivered 4 times", count, 4);
-        mock.assertIsSatisfied();
+        StringReader message = new StringReader("<hello>Willem</hello>");
 
+        sendingMessage(message);
     }
 
     public void testSendingSource() throws Exception {
+
+        StreamSource message = new StreamSource(new 
StringReader("<hello>Willem</hello>"));
+
+        sendingMessage(message);
+    }
+
+    private void sendingMessage(Object message) throws InterruptedException {
         count = 0;
         MockEndpoint mock = getMockEndpoint("mock:error");
         mock.expectedMessageCount(1);
-        StreamSource message = new StreamSource(new 
StringReader("<hello>Willem</hello>"));
 
         template.sendBody("direct:start", message);
         assertEquals("The message should be delivered 4 times", count, 4);


Reply via email to