diff options
author | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2010-01-24 14:24:14 +0000 |
---|---|---|
committer | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2010-01-24 14:24:14 +0000 |
commit | 3d3670cdd4ee1aaf6d3e22fd7de7fb362c9eefba (patch) | |
tree | b62fd62bad2d3713c7d2b331598c092413bd96c6 /sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02 | |
parent | 878131a50cf9651fc8de402420b8c94696328a3c (diff) |
Copy into trunk from sandbox
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@902572 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
35 files changed, 1386 insertions, 0 deletions
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/build.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/build.xml new file mode 100644 index 0000000000..a58fed933a --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/build.xml @@ -0,0 +1,45 @@ +<!--
+ * 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="scatours-chapter-02" default="compile">
+
+ <target name="compile">
+ <antcall target="allsubdirs">
+ <param name="target" value="compile"/>
+ </antcall>
+ </target>
+
+ <target name="run">
+ <ant dir="node" target="run"/>
+ </target>
+
+ <target name="clean">
+ <antcall target="allsubdirs">
+ <param name="target" value="clean"/>
+ </antcall>
+ </target>
+
+ <target name="allsubdirs">
+ <ant dir="goodvaluetrips-contribution" target="${target}"/>
+ <ant dir="tuscanyscatours-contribution" target="${target}"/>
+ <ant dir="client-contribution" target="${target}"/>
+ <ant dir="node" target="${target}"/>
+ </target>
+
+</project>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/build.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/build.xml new file mode 100644 index 0000000000..17bc0d7d5b --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/build.xml @@ -0,0 +1,45 @@ +<!--
+ * 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="scatours-chapter-02-client-contribution" default="compile">
+ <property environment="env"/>
+
+ <target name="compile">
+ <mkdir dir="target/classes"/>
+ <javac destdir="target/classes" debug="on" source="1.5" target="1.5">
+ <src path="src/main/java"/>
+ <classpath>
+ <pathelement location="../tuscanyscatours-contribution/target/scatours-chapter-02-tuscanyscatours-contribution.jar"/>
+ <pathelement location="${env.TUSCANY}/lib/tuscany-sca-manifest.jar"/>
+ </classpath>
+ </javac>
+ <copy todir="target/classes">
+ <fileset dir="src/main/resources"/>
+ </copy>
+ <jar destfile="target/scatours-chapter-02-client-contribution.jar"
+ basedir="target/classes"/>
+ </target>
+
+ <target name="clean">
+ <delete includeemptydirs="true">
+ <fileset dir="target"/>
+ </delete>
+ </target>
+
+</project>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/pom.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/pom.xml new file mode 100644 index 0000000000..e5982fe7bd --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/pom.xml @@ -0,0 +1,48 @@ +<?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-sca</artifactId>
+ <version>1.6-SNAPSHOT</version>
+ <!--relativePath>../../pom.xml</relativePath-->
+ </parent>
+ <artifactId>scatours-chapter-02-client-contribution</artifactId>
+ <name>Apache Tuscany SCA Tours Chapter 02 Test Client Contribution</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-sca-api</artifactId>
+ <version>1.6-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>scatours-chapter-02-tuscanyscatours-contribution</artifactId>
+ <version>1.6-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <finalName>${artifactId}</finalName>
+ </build>
+</project>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/src/main/java/scatours/client/TestClient.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/src/main/java/scatours/client/TestClient.java new file mode 100644 index 0000000000..cb80368918 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/src/main/java/scatours/client/TestClient.java @@ -0,0 +1,46 @@ +/*
+ * 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.
+ */
+
+package scatours.client;
+
+import com.tuscanyscatours.Bookings;
+import com.tuscanyscatours.Checkout;
+
+import org.osoa.sca.annotations.Reference;
+import org.osoa.sca.annotations.Service;
+
+@Service(Runnable.class)
+public class TestClient {
+ @Reference
+ protected Bookings bookings;
+
+ @Reference
+ protected Checkout checkout;
+
+ public TestClient() {
+ }
+
+ public void run() {
+ String bookingCode = bookings.newBooking("FS1APR4", 1);
+ System.out.println("Booking code is " + bookingCode);
+
+ checkout.makePayment(1995.00, "1234567843218765 10/10");
+ System.out.println("Paid $1995.00");
+ }
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/src/main/resources/META-INF/sca-contribution.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/src/main/resources/META-INF/sca-contribution.xml new file mode 100644 index 0000000000..54ae0dbd0a --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/src/main/resources/META-INF/sca-contribution.xml @@ -0,0 +1,25 @@ +<?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:client="http://client.scatours/">
+ <export namespace="http://client.scatours/" />
+ <import.java package="com.tuscanyscatours" />
+ <deployable composite="client:Client" />
+</contribution>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/src/main/resources/client.composite b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/src/main/resources/client.composite new file mode 100644 index 0000000000..05c2755114 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/client-contribution/src/main/resources/client.composite @@ -0,0 +1,29 @@ +<?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"
+ targetNamespace="http://client.scatours/"
+ name="Client">
+
+ <component name="TestClient">
+ <implementation.java class="scatours.client.TestClient" />
+ <reference name="bookings" target="TripBooking/Bookings" />
+ <reference name="checkout" target="ShoppingCart/Checkout" />
+ </component>
+</composite>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/build.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/build.xml new file mode 100644 index 0000000000..fa67a921e2 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/build.xml @@ -0,0 +1,44 @@ +<!--
+ * 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="scatours-chapter-02-goodvaluetrips-contribution" default="compile">
+ <property environment="env"/>
+
+ <target name="compile">
+ <mkdir dir="target/classes"/>
+ <javac destdir="target/classes" debug="on" source="1.5" target="1.5">
+ <src path="src/main/java"/>
+ <classpath>
+ <pathelement location="${env.TUSCANY}/lib/tuscany-sca-manifest.jar"/>
+ </classpath>
+ </javac>
+ <copy todir="target/classes">
+ <fileset dir="src/main/resources"/>
+ </copy>
+ <jar destfile="target/scatours-chapter-02-goodvaluetrips-contribution.jar"
+ basedir="target/classes"/>
+ </target>
+
+ <target name="clean">
+ <delete includeemptydirs="true">
+ <fileset dir="target"/>
+ </delete>
+ </target>
+
+</project>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/pom.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/pom.xml new file mode 100644 index 0000000000..5ff8cc8382 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/pom.xml @@ -0,0 +1,42 @@ +<?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-sca</artifactId> + <version>1.6-SNAPSHOT</version> + <!--relativePath>../../pom.xml</relativePath--> + </parent> + <artifactId>scatours-chapter-02-goodvaluetrips-contribution</artifactId> + <name>Apache Tuscany SCA Tours Chapter 02 Good Value Trips Contribution</name> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-sca-api</artifactId> + <version>1.6-SNAPSHOT</version> + </dependency> + </dependencies> + + <build> + <finalName>${artifactId}</finalName> + </build> +</project> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/java/com/goodvaluetrips/TripProvider.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/java/com/goodvaluetrips/TripProvider.java new file mode 100644 index 0000000000..d30046aaef --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/java/com/goodvaluetrips/TripProvider.java @@ -0,0 +1,26 @@ +/*
+ * 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.
+ */
+package com.goodvaluetrips;
+
+public class TripProvider implements Trips {
+ public String checkAvailability(String trip, int people) {
+ // call non-SCA code to reserve trip and return booking code
+ return "6R98Y";
+ }
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/java/com/goodvaluetrips/Trips.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/java/com/goodvaluetrips/Trips.java new file mode 100644 index 0000000000..365a210368 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/java/com/goodvaluetrips/Trips.java @@ -0,0 +1,26 @@ +/*
+ * 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.
+ */
+package com.goodvaluetrips;
+
+import org.osoa.sca.annotations.Remotable;
+
+@Remotable
+public interface Trips {
+ String checkAvailability(String trip, int people);
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/resources/META-INF/sca-contribution.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/resources/META-INF/sca-contribution.xml new file mode 100644 index 0000000000..6ed07d5612 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/resources/META-INF/sca-contribution.xml @@ -0,0 +1,24 @@ +<?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:gvt="http://goodvaluetrips.com/"> + <export namespace="http://goodvaluetrips.com/" /> + <deployable composite="gvt:Trips" /> +</contribution> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/resources/trips.composite b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/resources/trips.composite new file mode 100644 index 0000000000..ab173e5ef7 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/goodvaluetrips-contribution/src/main/resources/trips.composite @@ -0,0 +1,30 @@ +<?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"
+ targetNamespace="http://goodvaluetrips.com/"
+ name="Trips">
+
+ <component name="TripProvider">
+ <implementation.java class="com.goodvaluetrips.TripProvider" />
+ <service name="Trips">
+ <interface.java interface="com.goodvaluetrips.Trips" />
+ </service>
+ </component>
+</composite>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/build.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/build.xml new file mode 100644 index 0000000000..0c3c506b67 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/build.xml @@ -0,0 +1,56 @@ +<!-- + * 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="scatours-chapter-02-node" default="compile"> + <property environment="env"/> + + <target name="compile"> + <mkdir dir="target/classes"/> + <javac destdir="target/classes" debug="on" source="1.5" target="1.5"> + <src path="src/main/java"/> + <classpath> + <pathelement location="${env.TUSCANY}/lib/tuscany-sca-manifest.jar"/> + </classpath> + </javac> + <copy todir="target/classes"> + <fileset dir="src/main/resources"/> + </copy> + <jar destfile="target/scatours-chapter-02-node.jar" basedir="target/classes"> + <manifest> + <attribute name="Main-Class" value="scatours.LaunchNode"/> + </manifest> + </jar> + </target> + + <target name="run"> + <java classname="scatours.LaunchNode" fork="true"> + <classpath> + <pathelement location="target/classes"/> + <pathelement location="${env.TUSCANY}/lib/tuscany-sca-manifest.jar"/> + </classpath> + </java> + </target> + + <target name="clean"> + <delete includeemptydirs="true"> + <fileset dir="target"/> + </delete> + </target> + +</project> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/pom.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/pom.xml new file mode 100644 index 0000000000..f858f9f7e7 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/pom.xml @@ -0,0 +1,70 @@ +<?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-sca</artifactId> + <version>1.6-SNAPSHOT</version> + <!--relativePath>../../pom.xml</relativePath--> + </parent> + <artifactId>scatours-chapter-02-node-jumpstart</artifactId> + <name>Apache Tuscany SCA Tours Chapter 02 Node Jumpstart</name> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-node-api</artifactId> + <version>1.6-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-implementation-java-runtime</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-implementation-node-runtime</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>test</scope> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>scatours-chapter-02-goodvaluetrips-contribution</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>test</scope> + </dependency> + + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.5</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <finalName>${artifactId}</finalName> + </build> +</project> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/main/java/scatours/LaunchNode.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/main/java/scatours/LaunchNode.java new file mode 100644 index 0000000000..b09939e49f --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/main/java/scatours/LaunchNode.java @@ -0,0 +1,53 @@ +/* + * 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. + */ + +package scatours; + +import org.apache.tuscany.sca.node.SCAClient; +import org.apache.tuscany.sca.node.SCAContribution; +import org.apache.tuscany.sca.node.SCANode; +import org.apache.tuscany.sca.node.SCANodeFactory; + +import com.goodvaluetrips.Trips; + +public class LaunchNode { + + public static void main(String[] args) throws Exception { + try { + SCAContribution gvtContribution = + new SCAContribution("goodvaluetrips", + "../goodvaluetrips-contribution/target/classes"); + SCANode node = SCANodeFactory.newInstance(). + createSCANode("trips.composite", + gvtContribution); + node.start(); + + Trips tripProvider = ((SCAClient)node).getService(Trips.class, + "TripProvider/Trips"); + + System.out.println("Trip boooking code = " + + tripProvider.checkAvailability("FS1APR4", 2)); + + node.stop(); + + } catch (Throwable th) { + th.printStackTrace(); + } + } +} diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/main/resources/META-INF/sca-contribution.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/main/resources/META-INF/sca-contribution.xml new file mode 100644 index 0000000000..e3ac806b9a --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/main/resources/META-INF/sca-contribution.xml @@ -0,0 +1,26 @@ +<?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:scatours="http://scatours"> + <import namespace="http://tuscanyscatours.com/" /> + <import namespace="http://goodvaluetrips.com/" /> + <import namespace="http://client.scatours/" /> + <deployable composite="scatours:scatours" /> +</contribution> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/main/resources/scatours.composite b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/main/resources/scatours.composite new file mode 100644 index 0000000000..6524f078f5 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/main/resources/scatours.composite @@ -0,0 +1,31 @@ +<?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" + targetNamespace="http://scatours" + xmlns:client="http://client.scatours/" + xmlns:tours="http://tuscanyscatours.com/" + xmlns:trips="http://goodvaluetrips.com/" + name="scatours"> + + <include name="client:Client" /> + <include name="tours:Tours" /> + <include name="trips:Trips" /> + +</composite> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/test/java/scatours/NodeTestCase.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/test/java/scatours/NodeTestCase.java new file mode 100644 index 0000000000..16cff30934 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node-jumpstart/src/test/java/scatours/NodeTestCase.java @@ -0,0 +1,60 @@ +/* + * 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. + */ +package scatours; + +import org.apache.tuscany.sca.node.SCAClient; +import org.apache.tuscany.sca.node.SCAContribution; +import org.apache.tuscany.sca.node.SCANode; +import org.apache.tuscany.sca.node.SCANodeFactory; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests all the components and services in chapter 2 + */ +public class NodeTestCase { + + private SCANode node; + + @Before + public void startServer() throws Exception { + try { + node = SCANodeFactory.newInstance().createSCANode("scatours.composite", + new SCAContribution("goodvaluetrips", "../goodvaluetrips-contribution/target/classes"), + new SCAContribution("tuscanyscatours", "../tuscanyscatours-contribution/target/classes"), + new SCAContribution("client", "../client-contribution/target/classes"), + new SCAContribution("node", "./target/classes")); + node.start(); + } catch (Exception ex) { + System.out.println(ex.toString()); + } + } + + @Test + public void testClient() throws Exception { + Runnable runner = ((SCAClient)node).getService(Runnable.class, "TestClient/Runnable"); + runner.run(); + } + + @After + public void stopServer() throws Exception { + node.stop(); + } +} diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/build.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/build.xml new file mode 100644 index 0000000000..0c3c506b67 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/build.xml @@ -0,0 +1,56 @@ +<!-- + * 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="scatours-chapter-02-node" default="compile"> + <property environment="env"/> + + <target name="compile"> + <mkdir dir="target/classes"/> + <javac destdir="target/classes" debug="on" source="1.5" target="1.5"> + <src path="src/main/java"/> + <classpath> + <pathelement location="${env.TUSCANY}/lib/tuscany-sca-manifest.jar"/> + </classpath> + </javac> + <copy todir="target/classes"> + <fileset dir="src/main/resources"/> + </copy> + <jar destfile="target/scatours-chapter-02-node.jar" basedir="target/classes"> + <manifest> + <attribute name="Main-Class" value="scatours.LaunchNode"/> + </manifest> + </jar> + </target> + + <target name="run"> + <java classname="scatours.LaunchNode" fork="true"> + <classpath> + <pathelement location="target/classes"/> + <pathelement location="${env.TUSCANY}/lib/tuscany-sca-manifest.jar"/> + </classpath> + </java> + </target> + + <target name="clean"> + <delete includeemptydirs="true"> + <fileset dir="target"/> + </delete> + </target> + +</project> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/pom.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/pom.xml new file mode 100644 index 0000000000..849bfef794 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/pom.xml @@ -0,0 +1,63 @@ +<?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-sca</artifactId> + <version>1.6-SNAPSHOT</version> + <!--relativePath>../../pom.xml</relativePath--> + </parent> + <artifactId>scatours-chapter-02-node</artifactId> + <name>Apache Tuscany SCA Tours Chapter 02 Node</name> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-node-api</artifactId> + <version>1.6-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-implementation-java-runtime</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-implementation-node-runtime</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>test</scope> + </dependency> + + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.5</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <finalName>${artifactId}</finalName> + </build> +</project> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/main/java/scatours/LaunchNode.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/main/java/scatours/LaunchNode.java new file mode 100644 index 0000000000..b7888c8749 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/main/java/scatours/LaunchNode.java @@ -0,0 +1,52 @@ +/* + * 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. + */ + +package scatours; + +import org.apache.tuscany.sca.node.SCAClient; +import org.apache.tuscany.sca.node.SCAContribution; +import org.apache.tuscany.sca.node.SCANode; +import org.apache.tuscany.sca.node.SCANodeFactory; + +public class LaunchNode { + + public static void main(String[] args) throws Exception { + LaunchNode.launchFromFileSystemDir(); + } + + // OK for development but you must launch the node from this module + public static void launchFromFileSystemDir(){ + try { + SCANode node = SCANodeFactory.newInstance().createSCANode("scatours.composite", + new SCAContribution("goodvaluetrips", "../goodvaluetrips-contribution/target/classes"), + new SCAContribution("tuscanyscatours", "../tuscanyscatours-contribution/target/classes"), + new SCAContribution("client", "../client-contribution/target/classes"), + new SCAContribution("node", "./target/classes")); + node.start(); + + Runnable runner = ((SCAClient)node).getService(Runnable.class, "TestClient/Runnable"); + runner.run(); + + node.stop(); + + } catch (Throwable th) { + th.printStackTrace(); + } + } +} diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/main/resources/META-INF/sca-contribution.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/main/resources/META-INF/sca-contribution.xml new file mode 100644 index 0000000000..4a6250ad25 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/main/resources/META-INF/sca-contribution.xml @@ -0,0 +1,26 @@ +<?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:scatours="http://scatours">
+ <import namespace="http://tuscanyscatours.com/" />
+ <import namespace="http://goodvaluetrips.com/" />
+ <import namespace="http://client.scatours/" />
+ <deployable composite="scatours:scatours" />
+</contribution>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/main/resources/scatours.composite b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/main/resources/scatours.composite new file mode 100644 index 0000000000..a5e26fd7b7 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/main/resources/scatours.composite @@ -0,0 +1,31 @@ +<?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"
+ targetNamespace="http://scatours"
+ xmlns:client="http://client.scatours/"
+ xmlns:tours="http://tuscanyscatours.com/"
+ xmlns:trips="http://goodvaluetrips.com/"
+ name="scatours">
+
+ <include name="client:Client" />
+ <include name="tours:Tours" />
+ <include name="trips:Trips" />
+
+</composite>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/test/java/scatours/NodeTestCase.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/test/java/scatours/NodeTestCase.java new file mode 100644 index 0000000000..d37e52a409 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/node/src/test/java/scatours/NodeTestCase.java @@ -0,0 +1,60 @@ +/*
+ * 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.
+ */
+package scatours;
+
+import org.apache.tuscany.sca.node.SCAClient;
+import org.apache.tuscany.sca.node.SCAContribution;
+import org.apache.tuscany.sca.node.SCANode;
+import org.apache.tuscany.sca.node.SCANodeFactory;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * Tests all the components and services in chapter 2
+ */
+public class NodeTestCase {
+
+ private SCANode node;
+
+ @Before
+ public void startServer() throws Exception {
+ try {
+ node = SCANodeFactory.newInstance().createSCANode("scatours.composite",
+ new SCAContribution("goodvaluetrips", "../goodvaluetrips-contribution/target/classes"),
+ new SCAContribution("tuscanyscatours", "../tuscanyscatours-contribution/target/classes"),
+ new SCAContribution("client", "../client-contribution/target/classes"),
+ new SCAContribution("node", "./target/classes"));
+ node.start();
+ } catch (Exception ex) {
+ System.out.println(ex.toString());
+ }
+ }
+
+ @Test
+ public void testClient() throws Exception {
+ Runnable runner = ((SCAClient)node).getService(Runnable.class, "TestClient/Runnable");
+ runner.run();
+ }
+
+ @After
+ public void stopServer() throws Exception {
+ node.stop();
+ }
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/pom.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/pom.xml new file mode 100644 index 0000000000..0132a445e5 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/pom.xml @@ -0,0 +1,48 @@ +<?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-sca</artifactId> + <version>1.5-SNAPSHOT</version> + <!--relativePath>../pom.xml</relativePath--> + </parent> + <artifactId>tuscany-scatours-chapter-02</artifactId> + <packaging>pom</packaging> + <name>Apache Tuscany SCA Tours Chapter 02 Examples</name> + + <profiles> + <profile> + <id>default</id> + <activation> + <activeByDefault>true</activeByDefault> + </activation> + <modules> + <module>goodvaluetrips-contribution</module> + <module>tuscanyscatours-contribution</module> + <module>client-contribution</module> + <module>node</module> + </modules> + </profile> + + </profiles> + +</project> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/build.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/build.xml new file mode 100644 index 0000000000..d9961176f3 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/build.xml @@ -0,0 +1,44 @@ +<!--
+ * 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="scatours-chapter-02-tuscanyscatours-contribution" default="compile">
+ <property environment="env"/>
+
+ <target name="compile">
+ <mkdir dir="target/classes"/>
+ <javac destdir="target/classes" debug="on" source="1.5" target="1.5">
+ <src path="src/main/java"/>
+ <classpath>
+ <pathelement location="${env.TUSCANY}/lib/tuscany-sca-manifest.jar"/>
+ </classpath>
+ </javac>
+ <copy todir="target/classes">
+ <fileset dir="src/main/resources"/>
+ </copy>
+ <jar destfile="target/scatours-chapter-02-tuscanyscatours-contribution.jar"
+ basedir="target/classes"/>
+ </target>
+
+ <target name="clean">
+ <delete includeemptydirs="true">
+ <fileset dir="target"/>
+ </delete>
+ </target>
+
+</project>
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/pom.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/pom.xml new file mode 100644 index 0000000000..6296c58e95 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/pom.xml @@ -0,0 +1,42 @@ +<?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-sca</artifactId> + <version>1.6-SNAPSHOT</version> + <!--relativePath>../../pom.xml</relativePath--> + </parent> + <artifactId>scatours-chapter-02-tuscanyscatours-contribution</artifactId> + <name>Apache Tuscany SCA Tours Chapter 02 SCA Tours Contribution</name> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-sca-api</artifactId> + <version>1.6-SNAPSHOT</version> + </dependency> + </dependencies> + + <build> + <finalName>${artifactId}</finalName> + </build> +</project> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/goodvaluetrips/Trips.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/goodvaluetrips/Trips.java new file mode 100644 index 0000000000..365a210368 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/goodvaluetrips/Trips.java @@ -0,0 +1,26 @@ +/*
+ * 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.
+ */
+package com.goodvaluetrips;
+
+import org.osoa.sca.annotations.Remotable;
+
+@Remotable
+public interface Trips {
+ String checkAvailability(String trip, int people);
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Bookings.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Bookings.java new file mode 100644 index 0000000000..9d54d46bb6 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Bookings.java @@ -0,0 +1,26 @@ +/*
+ * 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.
+ */
+package com.tuscanyscatours;
+
+import org.osoa.sca.annotations.Remotable;
+
+@Remotable
+public interface Bookings {
+ String newBooking(String trip, int people);
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Checkout.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Checkout.java new file mode 100644 index 0000000000..688fc7e83b --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Checkout.java @@ -0,0 +1,26 @@ +/*
+ * 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.
+ */
+package com.tuscanyscatours;
+
+import org.osoa.sca.annotations.Remotable;
+
+@Remotable
+public interface Checkout {
+ void makePayment(double amount, String cardInfo);
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/ShoppingCart.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/ShoppingCart.java new file mode 100644 index 0000000000..68bf25a8cd --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/ShoppingCart.java @@ -0,0 +1,28 @@ +/*
+ * 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.
+ */
+package com.tuscanyscatours;
+
+public class ShoppingCart implements Checkout, Updates {
+ public void makePayment(double amount, String cardInfo) {
+ // make payment for trips in cart giving card details
+ }
+ public void addTrip(String resCode) {
+ // add the booked trip to the cart
+ }
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/TripBooking.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/TripBooking.java new file mode 100644 index 0000000000..e64d60545e --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/TripBooking.java @@ -0,0 +1,35 @@ +/*
+ * 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.
+ */
+package com.tuscanyscatours;
+
+import org.osoa.sca.annotations.Reference;
+
+public class TripBooking implements Bookings {
+ @Reference
+ protected com.goodvaluetrips.Trips mytrips;
+
+ @Reference
+ protected Updates cart;
+
+ public String newBooking(String trip, int people) {
+ String resCode = mytrips.checkAvailability(trip, people);
+ cart.addTrip(resCode);
+ return "GV" + resCode;
+ }
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Updates.java b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Updates.java new file mode 100644 index 0000000000..e33b0399cb --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Updates.java @@ -0,0 +1,26 @@ +/*
+ * 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.
+ */
+package com.tuscanyscatours;
+
+import org.osoa.sca.annotations.Remotable;
+
+@Remotable
+public interface Updates {
+ void addTrip(String resCode);
+}
diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/resources/META-INF/sca-contribution.xml b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/resources/META-INF/sca-contribution.xml new file mode 100644 index 0000000000..cf1153ac14 --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/resources/META-INF/sca-contribution.xml @@ -0,0 +1,25 @@ +<?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:tst="http://tuscanyscatours.com/"> + <export namespace="http://tuscanyscatours.com/" /> + <export.java package="com.tuscanyscatours" /> + <deployable composite="tst:Tours" /> +</contribution> diff --git a/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/resources/tours.composite b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/resources/tours.composite new file mode 100644 index 0000000000..f166a1635d --- /dev/null +++ b/sca-java-1.x/trunk/tutorials/travelsample/contrib/chapter-02/tuscanyscatours-contribution/src/main/resources/tours.composite @@ -0,0 +1,46 @@ +<?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"
+ targetNamespace="http://tuscanyscatours.com/"
+ name="Tours">
+
+ <component name="TripBooking">
+ <implementation.java class="com.tuscanyscatours.TripBooking" />
+ <service name="Bookings">
+ <interface.java interface="com.tuscanyscatours.Bookings" />
+ </service>
+ <reference name="mytrips" target="TripProvider/Trips">
+ <interface.java interface="com.goodvaluetrips.Trips" />
+ </reference>
+ <reference name="cart" target="ShoppingCart/Updates">
+ <interface.java interface="com.tuscanyscatours.Updates" />
+ </reference>
+ </component>
+
+ <component name="ShoppingCart">
+ <implementation.java class="com.tuscanyscatours.ShoppingCart"/>
+ <service name="Checkout">
+ <interface.java interface="com.tuscanyscatours.Checkout" />
+ </service>
+ <service name="Updates">
+ <interface.java interface="com.tuscanyscatours.Updates" />
+ </service>
+ </component>
+</composite>
|