]> git.mxchange.org Git - pizzaservice-war.git/commitdiff
Finally added calculateItemPrice() ...
authorRoland Haeder <roland@mxchange.org>
Fri, 11 Sep 2015 10:05:49 +0000 (12:05 +0200)
committerRoland Haeder <roland@mxchange.org>
Fri, 11 Sep 2015 10:06:38 +0000 (12:06 +0200)
Signed-off-by:Roland Häder <roland@mxchange.org>

src/java/org/mxchange/pizzaapplication/beans/basket/BasketWebBean.java
src/java/org/mxchange/pizzaapplication/beans/basket/BasketWebController.java

index c0cb2ed5b789b520fd931cb3066551657594e729..e3965945aadb237ae1b13f3cb578356b01b31ec6 100644 (file)
@@ -71,6 +71,27 @@ public class BasketWebBean extends BaseFrameworkBean implements BasketWebControl
                this.basketBean = (BasketSessionBeanRemote) context.lookup("ejb/stateless-basket"); //NOI18N
        }
 
+       @Override
+       public Float calculateItemPrice () {
+               // Is the current item/amount set?
+               if (this.getCurrentItem() == null) {
+                       // Current item is null
+                       throw new NullPointerException("currentItem is null");
+               } else if (this.getCurrentItem().getProduct() == null) {
+                       // Product is null
+                       throw new NullPointerException("currentItem.product is null");
+               } else if (this.getCurrentItem().getAmount() == null) {
+                       // Amount is null
+                       throw new NullPointerException("currentItem.amount is null");
+               }
+
+               // Caculate item's price
+               Float totalPrice = (this.getCurrentItem().getProduct().getPrice() * this.getCurrentItem().getAmount());
+
+               // Return it
+               return totalPrice;
+       }
+
        @Override
        public Long getAmount () {
                return this.amount;
index 72bf7db8a05e5bade570eb03906a160a1470eacc..d071350686884d554a2963f252969c6a46e81d6a 100644 (file)
@@ -26,6 +26,7 @@ import org.mxchange.jshopcore.model.product.Product;
  * @author Roland Haeder<roland@mxchange.org>
  */
 public interface BasketWebController extends Serializable {
+
        /**
         * Checks whether the basket is empty
         *
@@ -34,7 +35,8 @@ public interface BasketWebController extends Serializable {
        public boolean isEmpty ();
 
        /**
-        * Checks whether the basket has items in it. This method is wrapper to isEmpty()
+        * Checks whether the basket has items in it. This method is wrapper to
+        * isEmpty()
         *
         * @return Whether the basket is empty
         */
@@ -49,7 +51,8 @@ public interface BasketWebController extends Serializable {
        public boolean isProductAdded (final Product product);
 
        /**
-        * Adds given product instance to basket by adding amount from form data to it.
+        * Adds given product instance to basket by adding amount from form data to
+        * it.
         *
         * @param product Product instance to add
         * @return Redirect target or null
@@ -83,4 +86,12 @@ public interface BasketWebController extends Serializable {
         * @param currentItem Current item
         */
        public void setCurrentItem (final AddableBasketItem currentItem);
+
+       /**
+        * Calculates total price (no tax added) of current item. If no current item
+        * is set and no amount, a NPE is thrown.
+        *
+        * @return Current item's total price
+        */
+       public Float calculateItemPrice ();
 }