summaryrefslogtreecommitdiffstats
path: root/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db')
-rw-r--r--sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/META-INF/sca-contribution.xml27
-rw-r--r--sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/build.xml54
-rw-r--r--sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/pom.xml107
-rw-r--r--sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/store-db.composite75
4 files changed, 263 insertions, 0 deletions
diff --git a/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/META-INF/sca-contribution.xml b/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/META-INF/sca-contribution.xml
new file mode 100644
index 0000000000..7a5d5613be
--- /dev/null
+++ b/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/META-INF/sca-contribution.xml
@@ -0,0 +1,27 @@
+<?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.
+-->
+<contribution xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:s="http://store">
+ <import.java package="services"/>
+ <import.java package="services.merger"/>
+ <import.java package="services.db"/>
+ <import.resource uri="uiservices/store.html"/>
+ <deployable composite="s:store-db"/>
+</contribution> \ No newline at end of file
diff --git a/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/build.xml b/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/build.xml
new file mode 100644
index 0000000000..bbfd09febd
--- /dev/null
+++ b/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/build.xml
@@ -0,0 +1,54 @@
+<!--
+ * 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.
+-->
+
+<project name="tutorial-store-db" default="compile">
+
+ <target name="compile">
+ <mkdir dir="target/classes"/>
+ <copy todir="target/classes">
+ <fileset dir="." excludes="**/*.java, **/.*/**, pom.xml, build*.xml, target/**, derby.log"/>
+ </copy>
+ <jar destfile="target/tutorial-store-db.jar" basedir="target/classes">
+ <manifest>
+ </manifest>
+ </jar>
+ <antcall target="create-db"/>
+ </target>
+
+ <target name="create-db">
+ <!--
+ Create the example database.
+ -->
+ <sql driver="org.apache.derby.jdbc.EmbeddedDriver"
+ url="jdbc:derby:${basedir}/target/cart-db;create=true"
+ userid=""
+ password=""
+ autocommit="true"
+ onerror="continue"
+ src="${basedir}/../assets/services/db/cart.sql"
+ classpath="${basedir}/../../../lib/derby-10.3.1.4.jar"/>
+ </target>
+
+ <target name="package" depends="compile"/>
+
+ <target name="clean">
+ <delete dir="target" includeemptydirs="true"/>
+ </target>
+
+</project>
diff --git a/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/pom.xml b/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/pom.xml
new file mode 100644
index 0000000000..2e6baacc24
--- /dev/null
+++ b/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/pom.xml
@@ -0,0 +1,107 @@
+<?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.
+-->
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-tutorial-store</artifactId>
+ <version>1.6.1-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+ <artifactId>tutorial-store-db</artifactId>
+ <name>Apache Tuscany SCA Store Tutorial Online Store Using DB</name>
+
+ <repositories>
+ <repository>
+ <id>apache.incubator</id>
+ <url>http://people.apache.org/repo/m2-incubating-repository</url>
+ </repository>
+ </repositories>
+
+ <build>
+ <finalName>${artifactId}</finalName>
+ <sourceDirectory>${basedir}</sourceDirectory>
+ <resources>
+ <resource>
+ <directory>${basedir}</directory>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ <exclude>**/.*/**</exclude>
+ <exclude>pom.xml</exclude>
+ <exclude>build*.xml</exclude>
+ <exclude>target/**</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>sql-maven-plugin</artifactId>
+ <version>1.3</version>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.derby</groupId>
+ <artifactId>derby</artifactId>
+ <version>10.3.1.4</version>
+ </dependency>
+ </dependencies>
+
+ <executions>
+ <execution>
+ <id>create-db</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>execute</goal>
+ </goals>
+ <configuration>
+ <driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
+ <url>jdbc:derby:${basedir}/target/cart-db;create=true</url>
+ <autocommit>true</autocommit>
+ <onError>continue</onError>
+ <onConnectionError>skip</onConnectionError>
+ <delimiter>;</delimiter>
+ <srcFiles>
+ <srcFile>${basedir}/../assets/services/db/cart.sql</srcFile>
+ </srcFiles>
+ </configuration>
+ </execution>
+
+ <!-- Shutdown DB in order to be able to run unit tests -->
+ <!-- commented out because the unit tests don't use this database
+ <execution>
+ <id>shutdown-database-sothat-test-can-run</id>
+ <phase>process-test-resources</phase>
+ <goals>
+ <goal>execute</goal>
+ </goals>
+ <configuration>
+ <driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
+ <url>jdbc:derby:${basedir}/target/cart-db;shutdown=true</url>
+ <skipOnConnectionError>true</skipOnConnectionError>
+ </configuration>
+ </execution>
+ -->
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/store-db.composite b/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/store-db.composite
new file mode 100644
index 0000000000..03094be5ad
--- /dev/null
+++ b/sca-java-1.x/branches/sca-java-1.6.2/tutorials/store/store-db/store-db.composite
@@ -0,0 +1,75 @@
+<?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.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:t="http://tuscany.apache.org/xmlns/sca/1.0"
+ targetNamespace="http://store"
+ name="store-db">
+
+ <component name="StoreDB">
+ <t:implementation.widget location="uiservices/store.html"/>
+ <service name="Widget">
+ <t:binding.http uri="/ui"/>
+ </service>
+ <reference name="catalog" target="StoreDBCatalog">
+ <t:binding.jsonrpc/>
+ </reference>
+ <reference name="shoppingCart" target="StoreDBShoppingCart/Cart">
+ <t:binding.atom/>
+ </reference>
+ <reference name="shoppingTotal" target="StoreDBShoppingCart/Total">
+ <t:binding.jsonrpc/>
+ </reference>
+ </component>
+
+ <component name="StoreDBCatalog">
+ <implementation.java class="services.merger.MergedCatalogImpl"/>
+ <property name="currencyCode">USD</property>
+ <service name="Catalog">
+ <t:binding.jsonrpc/>
+ </service>
+ <reference name="fruitsCatalog" target="StoreDBFruitsCatalog"/>
+ <reference name="vegetablesCatalog" target="VegetablesCatalogWebService">
+ <binding.ws/>
+ </reference>
+ <reference name="currencyConverter" target="StoreDBCurrencyConverter"/>
+ </component>
+
+ <component name="StoreDBFruitsCatalog">
+ <implementation.java class="services.FruitsCatalogImpl"/>
+ <property name="currencyCode">USD</property>
+ <reference name="currencyConverter" target="StoreDBCurrencyConverter"/>
+ </component>
+
+ <component name="StoreDBShoppingCart">
+ <implementation.java class="services.db.ShoppingCartTableImpl"/>
+ <property name="database">../store-db/target/cart-db</property>
+ <service name="Cart">
+ <t:binding.atom uri="/ShoppingCart/Cart"/>
+ </service>
+ <service name="Total">
+ <t:binding.jsonrpc/>
+ </service>
+ </component>
+
+ <component name="StoreDBCurrencyConverter">
+ <implementation.java class="services.CurrencyConverterImpl"/>
+ </component>
+
+</composite>