1 17 package org.apache.geronimo.console.jmsmanager.server; 18 19 import java.io.IOException ; 20 import java.util.List ; 21 import java.net.URI ; 22 import javax.portlet.PortletRequestDispatcher; 23 import javax.portlet.ActionRequest; 24 import javax.portlet.ActionResponse; 25 import javax.portlet.PortletException; 26 import javax.portlet.RenderRequest; 27 import javax.portlet.RenderResponse; 28 import javax.portlet.WindowState; 29 import javax.portlet.PortletConfig; 30 import org.apache.geronimo.console.util.PortletManager; 31 import org.apache.geronimo.gbean.AbstractName; 32 import org.apache.geronimo.management.geronimo.JMSManager; 33 import org.apache.commons.logging.Log; 34 import org.apache.commons.logging.LogFactory; 35 36 41 public class JMSBrokerPortlet extends BaseJMSPortlet { 42 private final static Log log = LogFactory.getLog(JMSBrokerPortlet.class); 43 private PortletRequestDispatcher normalView; 44 45 private PortletRequestDispatcher maximizedView; 46 47 private PortletRequestDispatcher helpView; 48 49 public void processAction(ActionRequest actionRequest, 50 ActionResponse actionResponse) throws PortletException, IOException { 51 try { 52 String mode = actionRequest.getParameter("mode"); 53 String brokerURI = actionRequest.getParameter("brokerURI"); 54 if(mode.equals("start")) { 55 try { 56 PortletManager.getManagedBean(actionRequest, new AbstractName(URI.create(brokerURI))).startRecursive(); 58 } catch (Exception e) { 59 throw new PortletException(e); 60 } 61 } else if(mode.equals("stop")) { 62 try { 63 PortletManager.getManagedBean(actionRequest, new AbstractName(URI.create(brokerURI))).stop(); 64 } catch (Exception e) { 65 throw new PortletException(e); 66 } 67 } else if(mode.equals("edit")) { 68 } else if(mode.equals("delete")) { 70 } else if(mode.equals("new")) { 72 } 74 actionResponse.setRenderParameter("mode", "list"); 75 } catch (Throwable e) { 76 log.error("Unable to process portlet action", e); 77 if(e instanceof PortletException) { 78 throw (PortletException)e; 79 } 80 } 81 } 82 83 protected void doView(RenderRequest renderRequest, 84 RenderResponse renderResponse) throws IOException , PortletException { 85 try { 86 if (WindowState.MINIMIZED.equals(renderRequest.getWindowState())) { 87 return; 88 } 89 JMSManager manager = PortletManager.getCurrentServer(renderRequest).getJMSManagers()[0]; List beans = getBrokerList(renderRequest, manager); 91 renderRequest.setAttribute("brokers", beans); 92 if (WindowState.NORMAL.equals(renderRequest.getWindowState())) { 93 normalView.include(renderRequest, renderResponse); 94 } else { 95 maximizedView.include(renderRequest, renderResponse); 96 } 97 } catch (Throwable e) { 98 log.error("Unable to render portlet", e); 99 } 100 } 101 102 protected void doHelp(RenderRequest renderRequest, 103 RenderResponse renderResponse) throws PortletException, IOException { 104 helpView.include(renderRequest, renderResponse); 105 } 106 107 public void init(PortletConfig portletConfig) throws PortletException { 108 super.init(portletConfig); 109 110 normalView = portletConfig.getPortletContext().getRequestDispatcher( 111 "/WEB-INF/view/jmsmanager/server/normal.jsp"); 112 maximizedView = portletConfig.getPortletContext().getRequestDispatcher( 113 "/WEB-INF/view/jmsmanager/server/maximized.jsp"); 114 helpView = portletConfig.getPortletContext().getRequestDispatcher( 115 "/WEB-INF/view/jmsmanager/server/help.jsp"); 116 } 117 118 public void destroy() { 119 helpView = null; 120 normalView = null; 121 maximizedView = null; 122 super.destroy(); 123 } 124 125 } 126 | Popular Tags |