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 2010/06/28 05:04:40 UTC
svn commit: r958445 - in /camel/trunk:
camel-core/src/main/java/org/apache/camel/builder/
components/camel-jetty/src/test/java/org/apache/camel/component/jetty/
Author: ningjiang
Date: Mon Jun 28 03:04:39 2010
New Revision: 958445
URL: http://svn.apache.org/viewvc?rev=958445&view=rev
Log:
CAMEL-2864 Added simple() DSL into Builder support
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/builder/Builder.java
camel/trunk/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpClientRouteTest.java
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/builder/Builder.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/Builder.java?rev=958445&r1=958444&r2=958445&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/builder/Builder.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/builder/Builder.java Mon Jun 28 03:04:39 2010
@@ -87,6 +87,14 @@ public final class Builder {
Expression expression = ExpressionBuilder.constantExpression(value);
return new ValueBuilder(expression);
}
+
+ /**
+ * Returns a simple expression
+ */
+ public static ValueBuilder simple(String value) {
+ Expression expression = ExpressionBuilder.simpleExpression(value);
+ return new ValueBuilder(expression);
+ }
/**
* Returns a predicate and value builder for headers on an exchange
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java?rev=958445&r1=958444&r2=958445&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/builder/BuilderSupport.java Mon Jun 28 03:04:39 2010
@@ -127,6 +127,13 @@ public abstract class BuilderSupport {
public ValueBuilder constant(Object value) {
return Builder.constant(value);
}
+
+ /**
+ * Returns a simple expression value builder
+ */
+ public ValueBuilder simple(String value) {
+ return Builder.simple(value);
+ }
/**
* Returns a <a href="http://camel.apache.org/bean-language.html">bean expression</a>
Modified: camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpClientRouteTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpClientRouteTest.java?rev=958445&r1=958444&r2=958445&view=diff
==============================================================================
--- camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpClientRouteTest.java (original)
+++ camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpClientRouteTest.java Mon Jun 28 03:04:39 2010
@@ -77,6 +77,16 @@ public class HttpClientRouteTest extends
mockEndpoint.assertIsSatisfied();
}
+
+ @Test
+ public void testHttpRouteWithQueryByHeader() throws Exception {
+ MockEndpoint mockEndpoint = getMockEndpoint("mock:a");
+ mockEndpoint.expectedBodiesReceived("test");
+
+ template.sendBody("direct:start4", "test");
+ mockEndpoint.assertIsSatisfied();
+
+ }
protected RouteBuilder createRouteBuilder() throws Exception {
return new RouteBuilder() {
@@ -92,6 +102,7 @@ public class HttpClientRouteTest extends
from("direct:start").to("http://localhost:9080/hello").process(clientProc).convertBodyTo(String.class).to("mock:a");
from("direct:start2").to("http://localhost:9081/hello").to("mock:a");
from("direct:start3").to("http://localhost:9081/Query%20/test?myQuery=%40%20query").to("mock:a");
+ from("direct:start4").setHeader(Exchange.HTTP_QUERY, simple("id=${body}")).to("http://localhost:9081/querystring").to("mock:a");
Processor proc = new Processor() {
public void process(Exchange exchange) throws Exception {
@@ -110,6 +121,18 @@ public class HttpClientRouteTest extends
}
});
+
+ from("jetty:http://localhost:9081/querystring").process(new Processor() {
+
+ public void process(Exchange exchange) throws Exception {
+ String result = exchange.getIn().getHeader("id", String.class);
+ if (result == null) {
+ result = "No id header";
+ }
+ exchange.getOut().setBody(result);
+ }
+
+ });
}
};
}