Author: davsclaus
Date: Mon Apr 15 07:08:08 2013
New Revision: 1467872

URL: http://svn.apache.org/r1467872
Log:
CAMEL-6272: Bean - Improve choose method logic for no parameter methods

Modified:
    
camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java
    
camel/trunk/camel-core/src/test/java/org/apache/camel/language/simple/SimpleTest.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java?rev=1467872&r1=1467871&r2=1467872&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java
 Mon Apr 15 07:08:08 2013
@@ -426,8 +426,8 @@ public class MethodInfo {
                 if (methodParameters != null) {
                     // split the parameters safely separated by comma, but 
beware that we can have
                     // quoted parameters which contains comma as well, so do a 
safe quote split
-                    String[] parameters = 
StringQuoteHelper.splitSafeQuote(methodParameters, ',');
-                    it = ObjectHelper.createIterator(parameters);
+                    String[] parameters = 
StringQuoteHelper.splitSafeQuote(methodParameters, ',', false);
+                    it = ObjectHelper.createIterator(parameters, ",", true);
                 }
 
                 // remove headers as they should not be propagated
@@ -490,8 +490,6 @@ public class MethodInfo {
                 // convert the parameter value to a String
                 String exp = 
exchange.getContext().getTypeConverter().convertTo(String.class, exchange, 
parameterValue);
                 if (exp != null) {
-                    // must trim first as there may be spaces between 
parameters
-                    exp = exp.trim();
                     // check if its a valid parameter value
                     boolean valid = BeanHelper.isValidParameterValue(exp);
 

Modified: 
camel/trunk/camel-core/src/test/java/org/apache/camel/language/simple/SimpleTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/language/simple/SimpleTest.java?rev=1467872&r1=1467871&r2=1467872&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/test/java/org/apache/camel/language/simple/SimpleTest.java
 (original)
+++ 
camel/trunk/camel-core/src/test/java/org/apache/camel/language/simple/SimpleTest.java
 Mon Apr 15 07:08:08 2013
@@ -1124,6 +1124,16 @@ public class SimpleTest extends Language
         assertExpression("${body.replace('\\', '\\\\')}", "foo\\\\bar\\\\baz");
     }
 
+    public void testBodyOgnlReplaceFirst() throws Exception {
+        exchange.getIn().setBody("http:camel.apache.org");
+
+        assertExpression("${body.replaceFirst('http:', 'http4:')}", 
"http4:camel.apache.org");
+        assertExpression("${body.replaceFirst('http:', '')}", 
"camel.apache.org");
+        assertExpression("${body.replaceFirst('http:', ' ')}", " 
camel.apache.org");
+        assertExpression("${body.replaceFirst('http:',    ' ')}", " 
camel.apache.org");
+        assertExpression("${body.replaceFirst('http:',' ')}", " 
camel.apache.org");
+    }
+
     public void testClassSimpleName() throws Exception {
         Animal tiger = new Animal("Tony the Tiger", 13);
         exchange.getIn().setBody(tiger);


Reply via email to