Author: ningjiang
Date: Fri Apr 24 13:09:15 2009
New Revision: 768296

URL: http://svn.apache.org/viewvc?rev=768296&view=rev
Log:
CAMEL-1559 support to get the headers value with $in.headers.Foo in XQuery 
endpoint

Modified:
    
camel/trunk/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/XQueryBuilder.java
    
camel/trunk/components/camel-saxon/src/test/java/org/apache/camel/component/xquery/XQueryPropogateHeadersTest.java
    
camel/trunk/components/camel-saxon/src/test/resources/org/apache/camel/component/xquery/transform.xquery

Modified: 
camel/trunk/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/XQueryBuilder.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/XQueryBuilder.java?rev=768296&r1=768295&r2=768296&view=diff
==============================================================================
--- 
camel/trunk/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/XQueryBuilder.java
 (original)
+++ 
camel/trunk/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/XQueryBuilder.java
 Fri Apr 24 13:09:15 2009
@@ -422,12 +422,14 @@
         throws Exception {
         addParameters(dynamicQueryContext, exchange.getProperties());
         addParameters(dynamicQueryContext, exchange.getIn().getHeaders(), 
"in.headers.");
+        dynamicQueryContext.setParameter("in.body", 
exchange.getIn().getBody());
         addParameters(dynamicQueryContext, getParameters());
 
         dynamicQueryContext.setParameter("exchange", exchange);
         Message out = exchange.getOut(false);
         if (out != null && exchange.getPattern().isOutCapable()) {
-            dynamicQueryContext.setParameter("out", out);
+            dynamicQueryContext.setParameter("out.body", out.getBody());
+            addParameters(dynamicQueryContext, exchange.getOut().getHeaders(), 
"out.headers.");
         }
     }
     

Modified: 
camel/trunk/components/camel-saxon/src/test/java/org/apache/camel/component/xquery/XQueryPropogateHeadersTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-saxon/src/test/java/org/apache/camel/component/xquery/XQueryPropogateHeadersTest.java?rev=768296&r1=768295&r2=768296&view=diff
==============================================================================
--- 
camel/trunk/components/camel-saxon/src/test/java/org/apache/camel/component/xquery/XQueryPropogateHeadersTest.java
 (original)
+++ 
camel/trunk/components/camel-saxon/src/test/java/org/apache/camel/component/xquery/XQueryPropogateHeadersTest.java
 Fri Apr 24 13:09:15 2009
@@ -28,7 +28,7 @@
     public void testPropogateHeadersTest() throws Exception {
         MockEndpoint mock = getMockEndpoint("mock:result");
         mock.expectedMessageCount(1);
-        mock.expectedBodiesReceived("<transformed 
subject=\"Hey\"><mail><subject>Hey</subject>"
+        mock.expectedBodiesReceived("<transformed sender=\"bar\" 
subject=\"Hey\"><mail><subject>Hey</subject>"
             + "<body>Hello world!</body></mail></transformed>");
         mock.expectedHeaderReceived("foo", "bar");
 
@@ -66,7 +66,7 @@
         return new RouteBuilder() {
             public void configure() throws Exception {
                 from("direct:one")
-                    
.to("xquery:org/apache/camel/component/xquery/transform.xquery")
+                    
.to("xquery:org/apache/camel/component/xquery/transform_with_headers.xquery")
                     .to("mock:result");
 
                 from("direct:two")

Modified: 
camel/trunk/components/camel-saxon/src/test/resources/org/apache/camel/component/xquery/transform.xquery
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-saxon/src/test/resources/org/apache/camel/component/xquery/transform.xquery?rev=768296&r1=768295&r2=768296&view=diff
==============================================================================
--- 
camel/trunk/components/camel-saxon/src/test/resources/org/apache/camel/component/xquery/transform.xquery
 (original)
+++ 
camel/trunk/components/camel-saxon/src/test/resources/org/apache/camel/component/xquery/transform.xquery
 Fri Apr 24 13:09:15 2009
@@ -1,4 +1,3 @@
-declare variable $in.headers.foo as xs:string external;
-<transformed subject="{mail/subject}" sender="{$in.headers.foo}">
+<transformed subject="{mail/subject}">
 {.}
 </transformed>
\ No newline at end of file


Reply via email to