CAMEL-8218 Updated the camel-example-restlet-jdbc with the REST-DSL

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/aad2fbd2
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/aad2fbd2
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/aad2fbd2

Branch: refs/heads/master
Commit: aad2fbd295c9786074fcb012900030e321289811
Parents: 2aea6e1
Author: Willem Jiang <willem.ji...@gmail.com>
Authored: Thu Jan 8 14:44:12 2015 +0800
Committer: Willem Jiang <willem.ji...@gmail.com>
Committed: Thu Jan 8 14:47:09 2015 +0800

----------------------------------------------------------------------
 examples/camel-example-restlet-jdbc/README.txt  |  2 +
 .../src/main/resources/camel-context.xml        |  2 +-
 .../src/main/resources/xml-rest-dsl.xml         | 98 ++++++++++++++++++++
 3 files changed, 101 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/aad2fbd2/examples/camel-example-restlet-jdbc/README.txt
----------------------------------------------------------------------
diff --git a/examples/camel-example-restlet-jdbc/README.txt 
b/examples/camel-example-restlet-jdbc/README.txt
index 0f281b0..d0725fd 100644
--- a/examples/camel-example-restlet-jdbc/README.txt
+++ b/examples/camel-example-restlet-jdbc/README.txt
@@ -9,6 +9,8 @@ Run the application using XML-DSL: mvn jetty:run
 
 To run with Java-DSL use: mvn jetty:run -Dimpl=java-dsl
 
+To run with XML-REST-DSL use: mvn jetty:run -Dimpl=xml-rest-dsl
+
 To create an person, make a http POST request with firstName and lastName 
parameters:
 curl -d "firstName=test&lastName=person" http://localhost:8080/rs/persons/
 

http://git-wip-us.apache.org/repos/asf/camel/blob/aad2fbd2/examples/camel-example-restlet-jdbc/src/main/resources/camel-context.xml
----------------------------------------------------------------------
diff --git 
a/examples/camel-example-restlet-jdbc/src/main/resources/camel-context.xml 
b/examples/camel-example-restlet-jdbc/src/main/resources/camel-context.xml
index f76cf8a..f3e24a6 100755
--- a/examples/camel-example-restlet-jdbc/src/main/resources/camel-context.xml
+++ b/examples/camel-example-restlet-jdbc/src/main/resources/camel-context.xml
@@ -20,5 +20,5 @@ limitations under the License.
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans.xsd";>
 
-    <import resource="${impl?:xml-dsl}.xml" />
+    <import resource="${impl:xml-dsl}.xml" />
 </beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/camel/blob/aad2fbd2/examples/camel-example-restlet-jdbc/src/main/resources/xml-rest-dsl.xml
----------------------------------------------------------------------
diff --git 
a/examples/camel-example-restlet-jdbc/src/main/resources/xml-rest-dsl.xml 
b/examples/camel-example-restlet-jdbc/src/main/resources/xml-rest-dsl.xml
new file mode 100644
index 0000000..afe1759
--- /dev/null
+++ b/examples/camel-example-restlet-jdbc/src/main/resources/xml-rest-dsl.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<beans xmlns="http://www.springframework.org/schema/beans";
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+       xmlns:jdbc="http://www.springframework.org/schema/jdbc";
+
+       xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans.xsd
+       http://camel.apache.org/schema/spring 
http://camel.apache.org/schema/spring/camel-spring.xsd
+       http://www.springframework.org/schema/jdbc 
http://www.springframework.org/schema/jdbc/spring-jdbc.xsd";>
+
+    <import resource="common.xml" />
+
+    <camelContext xmlns="http://camel.apache.org/schema/spring";>
+
+       <restConfiguration bindingMode="auto" component="restlet"/>
+
+       <rest>
+          <post uri="/persons">
+             <to uri="direct:postPersons"/>
+           </post>
+           <get uri="/persons">
+              <to uri="direct:getPersons"/>
+           </get>
+           <get uri="/persons/{personId}">
+               <to uri="direct:getPersionId"/>
+           </get>
+           <put uri="/persons/{personId}">
+               <to uri="direct:putPersionId"/>
+           </put>
+           <delete uri="/persons/{personId}">
+               <to uri="direct:deletePersionId"/>
+           </delete>    
+        </rest>
+        
+         <route>
+            <from uri="direct:postPersons"/>
+            <setBody>
+                <simple>insert into person(firstName, lastName) 
values('${header.firstName}','${header.lastName}')
+                </simple>
+            </setBody>
+            <to uri="jdbc:dataSource"/>
+
+            <setBody>
+                <!--<simple>select * from person ORDER BY id desc OFFSET 1 
ROWS</simple>-->
+                <simple>select * from person where id in (select max(id) from 
person)</simple>
+            </setBody>
+            <to uri="jdbc:dataSource"/>
+        </route>
+        
+        <route>
+            <from uri="direct:getPersons"/>
+            <setBody>
+                <constant>select * from person</constant>
+            </setBody>
+            <to uri="jdbc:dataSource"/>
+        </route>
+
+        <route>
+            <from uri="direct:getPersionId"/>
+            <setBody>
+                <simple>select * from person where id = 
${header.personId}</simple>
+            </setBody>
+            <to uri="jdbc:dataSource"/>
+        </route>
+        
+        <route>       
+            <from uri="direct:putPersionId"/>
+            <setBody>
+                 <simple>update person set firstName='${header.firstName}', 
lastName='${header.lastName}' where id = ${header.personId}</simple>
+            </setBody>
+            <to uri="jdbc:dataSource"/>
+        </route>        
+      
+        <route>
+            <from uri="direct:deletePersionId"/>
+            <setBody>
+                <simple>delete from person where id = 
${header.personId}</simple>
+            </setBody>
+            <to uri="jdbc:dataSource"/>
+        </route>
+    </camelContext>
+</beans>
\ No newline at end of file

Reply via email to