001
014
015 package com.liferay.taglib.portlet;
016
017 import com.liferay.portal.kernel.util.JavaConstants;
018
019 import javax.portlet.PortletConfig;
020 import javax.portlet.PortletPreferences;
021 import javax.portlet.PortletRequest;
022 import javax.portlet.PortletResponse;
023 import javax.portlet.PortletSession;
024
025 import javax.servlet.http.HttpServletRequest;
026 import javax.servlet.jsp.tagext.TagSupport;
027
028
031 public class DefineObjectsTag extends TagSupport {
032
033 public int doStartTag() {
034 HttpServletRequest request =
035 (HttpServletRequest)pageContext.getRequest();
036
037 String lifecycle = (String)request.getAttribute(
038 PortletRequest.LIFECYCLE_PHASE);
039
040 PortletConfig portletConfig = (PortletConfig)request.getAttribute(
041 JavaConstants.JAVAX_PORTLET_CONFIG);
042
043 if (portletConfig != null) {
044 pageContext.setAttribute("portletConfig", portletConfig);
045 pageContext.setAttribute(
046 "portletName", portletConfig.getPortletName());
047 }
048
049 PortletRequest portletRequest = (PortletRequest)request.getAttribute(
050 JavaConstants.JAVAX_PORTLET_REQUEST);
051
052 if (portletRequest != null) {
053 String portletRequestAttrName = null;
054
055 if (lifecycle.equals(PortletRequest.ACTION_PHASE)) {
056 portletRequestAttrName = "actionRequest";
057 }
058 else if (lifecycle.equals(PortletRequest.EVENT_PHASE)) {
059 portletRequestAttrName = "eventRequest";
060 }
061 else if (lifecycle.equals(PortletRequest.RENDER_PHASE)) {
062 portletRequestAttrName = "renderRequest";
063 }
064 else if (lifecycle.equals(PortletRequest.RESOURCE_PHASE)) {
065 portletRequestAttrName = "resourceRequest";
066 }
067
068 pageContext.setAttribute(portletRequestAttrName, portletRequest);
069
070 PortletPreferences portletPreferences =
071 portletRequest.getPreferences();
072
073 pageContext.setAttribute("portletPreferences", portletPreferences);
074 pageContext.setAttribute(
075 "portletPreferencesValues", portletPreferences.getMap());
076
077 PortletSession portletSession = portletRequest.getPortletSession();
078
079 pageContext.setAttribute("portletSession", portletSession);
080
081 try {
082 pageContext.setAttribute(
083 "portletSessionScope", portletSession.getAttributeMap());
084 }
085 catch (IllegalStateException ise) {
086 }
087 }
088
089 PortletResponse portletResponse = (PortletResponse)request.getAttribute(
090 JavaConstants.JAVAX_PORTLET_RESPONSE);
091
092 if (portletResponse != null) {
093 String portletResponseAttrName = null;
094
095 if (lifecycle.equals(PortletRequest.ACTION_PHASE)) {
096 portletResponseAttrName = "actionResponse";
097 }
098 else if (lifecycle.equals(PortletRequest.EVENT_PHASE)) {
099 portletResponseAttrName = "eventResponse";
100 }
101 else if (lifecycle.equals(PortletRequest.RENDER_PHASE)) {
102 portletResponseAttrName = "renderResponse";
103 }
104 else if (lifecycle.equals(PortletRequest.RESOURCE_PHASE)) {
105 portletResponseAttrName = "resourceResponse";
106 }
107
108 pageContext.setAttribute(portletResponseAttrName, portletResponse);
109 }
110
111 return SKIP_BODY;
112 }
113
114 }