diff options
Diffstat (limited to 'sandbox/travelsample/shared-contributions/shoppingcart-contribution/src/main/java/scatours/shoppingcart/ShoppingCartImpl.java')
-rw-r--r-- | sandbox/travelsample/shared-contributions/shoppingcart-contribution/src/main/java/scatours/shoppingcart/ShoppingCartImpl.java | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/sandbox/travelsample/shared-contributions/shoppingcart-contribution/src/main/java/scatours/shoppingcart/ShoppingCartImpl.java b/sandbox/travelsample/shared-contributions/shoppingcart-contribution/src/main/java/scatours/shoppingcart/ShoppingCartImpl.java index 31b273bf47..feb26f4c27 100644 --- a/sandbox/travelsample/shared-contributions/shoppingcart-contribution/src/main/java/scatours/shoppingcart/ShoppingCartImpl.java +++ b/sandbox/travelsample/shared-contributions/shoppingcart-contribution/src/main/java/scatours/shoppingcart/ShoppingCartImpl.java @@ -32,9 +32,10 @@ import org.osoa.sca.annotations.Reference; import org.osoa.sca.annotations.Scope; import org.osoa.sca.annotations.Service; +import payment.Payment; + import scatours.common.TripItem; -//import scatours.paymentprocess.PaymentProcess; /** * An implementation of the Trip service @@ -43,8 +44,8 @@ import scatours.common.TripItem; @Service(interfaces={ShoppingCart.class}) public class ShoppingCartImpl implements ShoppingCart{ - // @Reference - // protected PaymentProcess paymentProcess; + @Reference + protected Payment payment; @ConversationID protected String cartId; @@ -83,7 +84,18 @@ public class ShoppingCartImpl implements ShoppingCart{ // get the total for all the trips float amount = (float)0.0; - //paymentProcess.makePayment(customerId, amount); + for (TripItem trip : trips){ + if (trip.getType().equals(TripItem.TRIP)){ + amount += trip.getPrice(); + } else { + for (TripItem tripItem : trip.getTripItems()){ + amount += tripItem.getPrice(); + } + } + } + + // Take the payment from the customer + payment.makePaymentMember(customerId, amount); } } |