Author: slaws
Date: Sun May 17 15:23:10 2009
New Revision: 775672

URL: http://svn.apache.org/viewvc?rev=775672&view=rev
Log:
Add a little more function to the simple travel booking sample and simplify the 
command line launcher contribution configuration. 

Added:
    
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Bookings.java
   (with props)
    
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Checkout.java
   (with props)
Modified:
    
tuscany/sandbox/travelsample/contributions/introducing-client-contribution/src/main/java/scatours/client/TestClient.java
    
tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Checkout.java
    
tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/ShoppingCart.java
    
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/LaunchNode.java
    
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/resources/scatours.composite

Modified: 
tuscany/sandbox/travelsample/contributions/introducing-client-contribution/src/main/java/scatours/client/TestClient.java
URL: 
http://svn.apache.org/viewvc/tuscany/sandbox/travelsample/contributions/introducing-client-contribution/src/main/java/scatours/client/TestClient.java?rev=775672&r1=775671&r2=775672&view=diff
==============================================================================
--- 
tuscany/sandbox/travelsample/contributions/introducing-client-contribution/src/main/java/scatours/client/TestClient.java
 (original)
+++ 
tuscany/sandbox/travelsample/contributions/introducing-client-contribution/src/main/java/scatours/client/TestClient.java
 Sun May 17 15:23:10 2009
@@ -19,6 +19,8 @@
 
 package scatours.client;
 
+import java.math.BigDecimal;
+
 import com.tuscanyscatours.Bookings;
 import com.tuscanyscatours.Checkout;
 
@@ -40,7 +42,6 @@
         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");
+        checkout.makePayment(new BigDecimal("1995.00"), "1234567843218765 
10/10");
     }
 }

Modified: 
tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Checkout.java
URL: 
http://svn.apache.org/viewvc/tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Checkout.java?rev=775672&r1=775671&r2=775672&view=diff
==============================================================================
--- 
tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Checkout.java
 (original)
+++ 
tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/Checkout.java
 Sun May 17 15:23:10 2009
@@ -18,9 +18,11 @@
  */
 package com.tuscanyscatours;
 
+import java.math.BigDecimal;
+
 import org.osoa.sca.annotations.Remotable;
 
 @Remotable
 public interface Checkout {
-    void makePayment(double amount, String cardInfo);
+    void makePayment(BigDecimal amount, String cardInfo);
 }

Modified: 
tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/ShoppingCart.java
URL: 
http://svn.apache.org/viewvc/tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/ShoppingCart.java?rev=775672&r1=775671&r2=775672&view=diff
==============================================================================
--- 
tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/ShoppingCart.java
 (original)
+++ 
tuscany/sandbox/travelsample/contributions/introducing-tuscanyscatours-contribution/src/main/java/com/tuscanyscatours/ShoppingCart.java
 Sun May 17 15:23:10 2009
@@ -18,11 +18,22 @@
  */
 package com.tuscanyscatours;
 
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
+
 public class ShoppingCart implements Checkout, Updates {
-    public void makePayment(double amount, String cardInfo) {
-        // make payment for trips in cart giving card details
+       private static List<String> bookedTrips = new ArrayList<String>();
+       
+    public void makePayment(BigDecimal amount, String cardInfo) {
+       System.out.print("Charged $" + amount + " to card " + cardInfo + " for 
trips" );
+       for (String trip : bookedTrips){
+               System.out.print(" " + trip);
+       }
+       System.out.println();
+       bookedTrips.clear();
     }
     public void addTrip(String resCode) {
-        // add the booked trip to the cart
+        bookedTrips.add(resCode);
     }
 }

Added: 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Bookings.java
URL: 
http://svn.apache.org/viewvc/tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Bookings.java?rev=775672&view=auto
==============================================================================
--- 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Bookings.java
 (added)
+++ 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Bookings.java
 Sun May 17 15:23:10 2009
@@ -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 scatours;
+
+import org.osoa.sca.annotations.Remotable;
+
+...@remotable
+public interface Bookings {
+    String newBooking(String trip, int people);
+}

Propchange: 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Bookings.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Bookings.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Checkout.java
URL: 
http://svn.apache.org/viewvc/tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Checkout.java?rev=775672&view=auto
==============================================================================
--- 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Checkout.java
 (added)
+++ 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Checkout.java
 Sun May 17 15:23:10 2009
@@ -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 scatours;
+
+import java.math.BigDecimal;
+
+import org.osoa.sca.annotations.Remotable;
+
+...@remotable
+public interface Checkout {
+    void makePayment(BigDecimal amount, String cardInfo);
+}

Propchange: 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Checkout.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/Checkout.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/LaunchNode.java
URL: 
http://svn.apache.org/viewvc/tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/LaunchNode.java?rev=775672&r1=775671&r2=775672&view=diff
==============================================================================
--- 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/LaunchNode.java
 (original)
+++ 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/java/scatours/LaunchNode.java
 Sun May 17 15:23:10 2009
@@ -19,6 +19,9 @@
 
 package scatours;
 
+import java.io.IOException;
+import java.math.BigDecimal;
+
 import org.apache.tuscany.sca.node.SCAClient;
 import org.apache.tuscany.sca.node.SCAContribution;
 import org.apache.tuscany.sca.node.SCANode;
@@ -33,16 +36,24 @@
     // OK for development but you must launch the node from this module 
     public static void launchFromFileSystemDir(){
         try {
-            SCANode node = 
SCANodeFactory.newInstance().createSCANode("scatours.composite", 
+            SCANode node = SCANodeFactory.newInstance().createSCANode(null, 
                 new SCAContribution("goodvaluetrips", 
"../../contributions/introducing-goodvaluetrips-contribution/target/classes"),
-                new SCAContribution("tuscanyscatours", 
"../../contributions/introducing-tuscanyscatours-contribution/target/classes"),
-                new SCAContribution("client", 
"../../contributions/introducing-client-contribution/target/classes"),
-                new SCAContribution("launcher", "./target/classes"));
+                new SCAContribution("tuscanyscatours", 
"../../contributions/introducing-tuscanyscatours-contribution/target/classes"));
+
             node.start();
 
-            Runnable runner = ((SCAClient)node).getService(Runnable.class, 
"TestClient/Runnable");
-            runner.run();
+            Bookings bookings = ((SCAClient)node).getService(Bookings.class, 
+                                                             
"TripBooking/Bookings");
 
+            System.out.println("Trip boooking code = " + 
+                                  bookings.newBooking("FS1APR4", 1));
+            
+            Checkout checkout = ((SCAClient)node).getService(Checkout.class, 
+                                                             
"ShoppingCart/Checkout");
+            
+            checkout.makePayment(new BigDecimal("1995.00"), "1234567843218765 
10/10");
+            
+            
             node.stop();
             
         } catch (Throwable th) {

Modified: 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/resources/scatours.composite
URL: 
http://svn.apache.org/viewvc/tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/resources/scatours.composite?rev=775672&r1=775671&r2=775672&view=diff
==============================================================================
--- 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/resources/scatours.composite
 (original)
+++ 
tuscany/sandbox/travelsample/launchers/introducing-launcher/src/main/resources/scatours.composite
 Sun May 17 15:23:10 2009
@@ -23,7 +23,7 @@
     xmlns:tours="http://tuscanyscatours.com/";
     xmlns:trips="http://goodvaluetrips.com/";
     name="scatours">
-
+    
     <include name="client:Client" />
     <include name="tours:Tours" />
     <include name="trips:Trips" />


Reply via email to