You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2009/05/15 16:52:04 UTC
svn commit: r775170 - in /camel/branches/camel-1.x: ./
camel-core/src/main/java/org/apache/camel/builder/
camel-core/src/test/java/org/apache/camel/processor/
Author: ningjiang
Date: Fri May 15 14:52:04 2009
New Revision: 775170
URL: http://svn.apache.org/viewvc?rev=775170&view=rev
Log:
Merged revisions 775123 via svnmerge from
https://svn.apache.org/repos/asf/camel/trunk
........
r775123 | ningjiang | 2009-05-15 21:10:31 +0800 (Fri, 15 May 2009) | 1 line
CAMEL-1618 added the DSL of BeanExpression for the non registry beans
........
Added:
camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/processor/ChoiceWhenBeanExpressionTest.java
- copied, changed from r775123, camel/trunk/camel-core/src/test/java/org/apache/camel/processor/ChoiceWhenBeanExpressionTest.java
Modified:
camel/branches/camel-1.x/ (props changed)
camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/Builder.java
camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java
camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/ExpressionBuilder.java
Propchange: camel/branches/camel-1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri May 15 14:52:04 2009
@@ -1 +1 @@
-/camel/trunk:736980,739733,739904,740251,740295,740306,740596,740663,741848,742231,742705,742739,742854,742856,742898,742906,743613,743762,743773,743920,743959-743960,744123,745105,745367,745541,745751,745826,745978,746269,746872,746895,746962,747258,747678-747704,748392,748436,748821,749563-749564,749574,749628-749629,749936,749956,750017,750334,750396,750761,750796,752068,752117,752418,752751-752755,752764-752773,752956,753087,753101,753175,755136,755487,756313,756348,756870,756939,757636,757693,757743,757865,758539,758563,758600,758617,758692,758990,759362,759453,759887,759931,760003,760890,760909,760937,761194,761536,761583,761607,762047,762633,762650,762935,763095,763484,763551,765154,765686,765729,765743,765824,766016,766289,766584,766588,766590,766602,766673,767403,767824,768342,769239,769346,769368,769434,770172,770906,771303,773193,773446,773781,774192,774383,774658-774659
+/camel/trunk:736980,739733,739904,740251,740295,740306,740596,740663,741848,742231,742705,742739,742854,742856,742898,742906,743613,743762,743773,743920,743959-743960,744123,745105,745367,745541,745751,745826,745978,746269,746872,746895,746962,747258,747678-747704,748392,748436,748821,749563-749564,749574,749628-749629,749936,749956,750017,750334,750396,750761,750796,752068,752117,752418,752751-752755,752764-752773,752956,753087,753101,753175,755136,755487,756313,756348,756870,756939,757636,757693,757743,757865,758539,758563,758600,758617,758692,758990,759362,759453,759887,759931,760003,760890,760909,760937,761194,761536,761583,761607,762047,762633,762650,762935,763095,763484,763551,765154,765686,765729,765743,765824,766016,766289,766584,766588,766590,766602,766673,767403,767824,768342,769239,769346,769368,769434,770172,770906,771303,773193,773446,773781,774192,774383,774658-774659,775123
Propchange: camel/branches/camel-1.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified: camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/Builder.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/Builder.java?rev=775170&r1=775169&r2=775170&view=diff
==============================================================================
--- camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/Builder.java (original)
+++ camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/Builder.java Fri May 15 14:52:04 2009
@@ -36,6 +36,44 @@
}
/**
+ * Returns a <a href="http://camel.apache.org/bean-language.html">bean expression</a>
+ * value builder
+ *
+ * @param beanRef reference to bean to lookup in the Registry
+ * @return the builder
+ */
+ public static ValueBuilder bean(String beanRef) {
+ Expression expression = ExpressionBuilder.beanExpression(beanRef);
+ return new ValueBuilder(expression);
+ }
+
+ /**
+ * Returns a <a href="http://camel.apache.org/bean-language.html">bean expression</a>
+ * value builder
+ *
+ * @param beanRef reference to bean to lookup in the Registry
+ * @param method name of method to invoke
+ * @return the builder
+ */
+ public static ValueBuilder bean(String beanRef, String method) {
+ Expression expression = ExpressionBuilder.beanExpression(beanRef, method);
+ return new ValueBuilder(expression);
+ }
+
+ /**
+ * Returns a <a href="http://camel.apache.org/bean-language.html">bean expression</a>
+ * value builder
+ *
+ * @param beanType the bean class which will be invoked
+ * @param method name of method to invoke
+ * @return the builder
+ */
+ public static ValueBuilder bean(Class beanType, String method) {
+ Expression expression = ExpressionBuilder.beanExpression(beanType, method);
+ return new ValueBuilder(expression);
+ }
+
+ /**
* Returns a constant expression
*/
public static <E extends Exchange> ValueBuilder<E> constant(Object value) {
Modified: camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java?rev=775170&r1=775169&r2=775170&view=diff
==============================================================================
--- camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java (original)
+++ camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java Fri May 15 14:52:04 2009
@@ -133,7 +133,30 @@
}
/**
- * Returns an expression value builder that replaces all occurrences of the
+ * Returns a <a href="http://camel.apache.org/bean-language.html">bean expression</a>
+ * value builder
+ *
+ * @param beanRef reference to bean to lookup in the Registry
+ * @return the builder
+ */
+ public ValueBuilder bean(String beanRef) {
+ return Builder.bean(beanRef, null);
+ }
+
+ /**
+ * Returns a <a href="http://camel.apache.org/bean-language.html">bean expression</a>
+ * value builder
+ *
+ * @param beanType the bean's class
+ * @param methodName the method name that will be invoked
+ * @return the builder
+ */
+ public ValueBuilder bean(Class<?> beanType, String methodName) {
+ return Builder.bean(beanType, methodName);
+ }
+
+ /**
+ * Returns an expression value builder that replaces all occurrences of the
* regular expression with the given replacement
*/
public ValueBuilder regexReplaceAll(Expression content, String regex, String replacement) {
Modified: camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/ExpressionBuilder.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/ExpressionBuilder.java?rev=775170&r1=775169&r2=775170&view=diff
==============================================================================
--- camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/ExpressionBuilder.java (original)
+++ camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/ExpressionBuilder.java Fri May 15 14:52:04 2009
@@ -33,6 +33,7 @@
import org.apache.camel.language.bean.BeanLanguage;
import org.apache.camel.language.simple.SimpleLanguage;
+
/**
* A helper class for working with <a href="http://activemq.apache.org/camel/expression.html">expressions</a>.
*
@@ -723,18 +724,14 @@
}
public static <E extends Exchange> Expression<E> beanExpression(final String bean) {
- return new Expression<E>() {
- public Object evaluate(E exchange) {
- // must call evalute to return the nested langauge evaluate when evaluating
- // stacked expressions
- return BeanLanguage.bean(bean).evaluate(exchange);
- }
-
- @Override
- public String toString() {
- return "bean(" + bean + ")";
- }
- };
+ return BeanLanguage.bean(bean);
+ }
+
+ public static <E extends Exchange> Expression<E> beanExpression(final String bean, final String method) {
+ return BeanLanguage.bean(bean, method);
+ }
+ public static Expression beanExpression(final Class beanType, final String methodName) {
+ return BeanLanguage.bean(beanType, methodName);
}
}
Copied: camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/processor/ChoiceWhenBeanExpressionTest.java (from r775123, camel/trunk/camel-core/src/test/java/org/apache/camel/processor/ChoiceWhenBeanExpressionTest.java)
URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/processor/ChoiceWhenBeanExpressionTest.java?p2=camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/processor/ChoiceWhenBeanExpressionTest.java&p1=camel/trunk/camel-core/src/test/java/org/apache/camel/processor/ChoiceWhenBeanExpressionTest.java&r1=775123&r2=775170&rev=775170&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/processor/ChoiceWhenBeanExpressionTest.java (original)
+++ camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/processor/ChoiceWhenBeanExpressionTest.java Fri May 15 14:52:04 2009
@@ -16,7 +16,6 @@
*/
package org.apache.camel.processor;
-import static org.apache.camel.builder.PredicateBuilder.not;
import org.apache.camel.Body;
import org.apache.camel.ContextTestSupport;
import org.apache.camel.builder.RouteBuilder;