KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > dotmarketing > portlets > product > action > ViewProductAction


1 /*
2  * Created on 19/10/2004
3  *
4  */

5 package com.dotmarketing.portlets.product.action;
6
7 import java.util.ArrayList JavaDoc;
8
9 import javax.portlet.PortletConfig;
10 import javax.portlet.PortletRequest;
11 import javax.portlet.PortletResponse;
12 import javax.portlet.RenderRequest;
13 import javax.portlet.RenderResponse;
14 import javax.portlet.WindowState;
15
16 import org.apache.struts.action.ActionForm;
17 import org.apache.struts.action.ActionForward;
18 import org.apache.struts.action.ActionMapping;
19
20 import com.dotmarketing.util.Logger;
21 import com.dotmarketing.util.UtilMethods;
22 import com.liferay.portal.struts.PortletAction;
23 import com.dotmarketing.portlets.product.factories.ProductFactory;
24 import com.dotmarketing.portlets.product.factories.ProductFormatFactory;
25 import com.dotmarketing.portlets.product.model.Product;
26 import com.dotmarketing.portlets.product.model.ProductFormat;
27 import com.dotmarketing.portlets.product.struts.ProductForm;
28
29 /**
30  * @author Salvador Di Nardo
31  *
32  */

33 public class ViewProductAction extends PortletAction {
34     public ActionForward render(ActionMapping mapping, ActionForm form, PortletConfig config, RenderRequest req,
35             RenderResponse res) throws Exception JavaDoc {
36         Logger.debug(this,"START VIEW PRODUCT ACTION");
37         _viewProducts(mapping,form,config,req,res);
38         if (req.getWindowState().equals(WindowState.NORMAL)) {
39             return mapping.findForward("portlet.ext.product.view");
40         } else {
41             return mapping.findForward("portlet.ext.product.view_product");
42         }
43     }
44
45     private void _viewProducts(ActionMapping mapping, ActionForm form, PortletConfig config, PortletRequest req,
46             PortletResponse res) throws Exception JavaDoc
47             {
48         ProductForm productForm = (ProductForm) form;
49         String JavaDoc[] productsType = productForm.getProductTypes();
50         String JavaDoc keyword = productForm.getKeyword();
51         //productForm.setOrderBy("title");
52
String JavaDoc orderBy = productForm.getOrderBy();
53         String JavaDoc direction = productForm.getDirection();
54         
55         orderBy = (UtilMethods.isSet(orderBy) ? orderBy : "sort_order");
56         ArrayList JavaDoc<Product> listProducts = (ArrayList JavaDoc<Product>) ProductFactory.getAllProducts(productsType,keyword,orderBy,direction);
57         ArrayList JavaDoc<ArrayList JavaDoc<ProductFormat>> formatProducts = new ArrayList JavaDoc<ArrayList JavaDoc<ProductFormat>>(listProducts.size());
58         for(int i = 0; i < listProducts.size(); i++)
59         {
60             Product product = (Product) listProducts.get(i);
61             ArrayList JavaDoc<ProductFormat> productFormats = (ArrayList JavaDoc<ProductFormat>) ProductFormatFactory.getAllFormatsByProduct(product);
62             formatProducts.add(productFormats);
63         }
64         productForm.setProducts(listProducts);
65         productForm.setFormats(formatProducts);
66     }
67 }
Popular Tags