1 package org.springframework.samples.jpetstore.web.spring; 2 3 import javax.servlet.http.HttpServletRequest ; 4 import javax.servlet.http.HttpServletResponse ; 5 6 import org.springframework.samples.jpetstore.domain.Cart; 7 import org.springframework.samples.jpetstore.domain.Item; 8 import org.springframework.samples.jpetstore.domain.logic.PetStoreFacade; 9 import org.springframework.web.servlet.ModelAndView; 10 import org.springframework.web.servlet.mvc.Controller; 11 import org.springframework.web.util.WebUtils; 12 13 17 public class AddItemToCartController implements Controller { 18 19 private PetStoreFacade petStore; 20 21 public void setPetStore(PetStoreFacade petStore) { 22 this.petStore = petStore; 23 } 24 25 public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { 26 Cart cart = (Cart) WebUtils.getOrCreateSessionAttribute(request.getSession(), "sessionCart", Cart.class); 27 String workingItemId = request.getParameter("workingItemId"); 28 if (cart.containsItemId(workingItemId)) { 29 cart.incrementQuantityByItemId(workingItemId); 30 } 31 else { 32 boolean isInStock = this.petStore.isItemInStock(workingItemId); 36 Item item = this.petStore.getItem(workingItemId); 37 cart.addItem(item, isInStock); 38 } 39 return new ModelAndView("Cart", "cart", cart); 40 } 41 42 } 43 | Popular Tags |