Author: jstrachan
Date: Tue May 13 00:07:02 2008
New Revision: 655755

URL: http://svn.apache.org/viewvc?rev=655755&view=rev
Log:
an improvement for https://issues.apache.org/activemq/browse/CAMEL-507

Modified:
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java?rev=655755&r1=655754&r2=655755&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java
 Tue May 13 00:07:02 2008
@@ -22,9 +22,11 @@
 import org.apache.camel.Predicate;
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
+import org.apache.camel.Expression;
 
 /**
- * Some useful converters for Camel APIs
+ * Some useful converters for Camel APIs such as to convert a [EMAIL 
PROTECTED] Predicate} or [EMAIL PROTECTED] Expression}
+ * to a [EMAIL PROTECTED] Processor}
  *
  * @version $Revision: 1.1 $
  */
@@ -40,5 +42,18 @@
                 out.setBody(answer);
             }
         };
+
+    }
+    
+    @Converter
+    public Processor toProcessor(final Expression<Exchange> expresion) {
+        return new Processor() {
+            public void process(Exchange exchange) throws Exception {
+                Object answer = expresion.evaluate(exchange);
+                Message out = exchange.getOut();
+                out.copyFrom(exchange.getIn());
+                out.setBody(answer);
+            }
+        };
     }
 }


Reply via email to