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 2015/01/08 07:51:04 UTC
[2/2] camel git commit: CAMEL-8218 Updated the
camel-example-restlet-jdbc with the REST-DSL
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/c23c4c15
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/c23c4c15
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/c23c4c15
Branch: refs/heads/camel-2.14.x
Commit: c23c4c1583aaab6509308b108b6f3dbca658e3db
Parents: 52fb5f1
Author: Willem Jiang <wi...@gmail.com>
Authored: Thu Jan 8 14:44:12 2015 +0800
Committer: Willem Jiang <wi...@gmail.com>
Committed: Thu Jan 8 14:50:36 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/c23c4c15/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/c23c4c15/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/c23c4c15/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