1
22
23 package com.liferay.portlet.tagscompiler;
24
25 import com.liferay.portal.kernel.portlet.LiferayPortlet;
26 import com.liferay.portal.kernel.util.ArrayUtil;
27 import com.liferay.portal.kernel.util.ParamUtil;
28 import com.liferay.portal.kernel.util.StringUtil;
29 import com.liferay.portal.theme.ThemeDisplay;
30 import com.liferay.portal.util.PortalUtil;
31 import com.liferay.portal.util.PortletKeys;
32 import com.liferay.portal.util.WebKeys;
33 import com.liferay.portlet.RenderParametersPool;
34 import com.liferay.portlet.tagscompiler.util.TagsCompilerSessionUtil;
35
36 import java.io.IOException;
37
38 import java.util.Collection;
39
40 import javax.portlet.PortletException;
41 import javax.portlet.RenderRequest;
42 import javax.portlet.RenderResponse;
43
44 import javax.servlet.http.HttpServletRequest;
45
46 import org.apache.commons.logging.Log;
47 import org.apache.commons.logging.LogFactory;
48
49
55 public class TagsCompilerPortlet extends LiferayPortlet {
56
57 public void render(RenderRequest req, RenderResponse res)
58 throws IOException, PortletException {
59
60
62 String entriesFromURL = ParamUtil.getString(req, "entries");
63 String[] entriesFromURLArray = StringUtil.split(entriesFromURL);
64
65 if (_log.isDebugEnabled()) {
66 _log.debug("Entries from friendly URL " + entriesFromURL);
67 }
68
69 Collection<String> entriesFromSession =
70 TagsCompilerSessionUtil.getEntries(req);
71 String[] entriesFromSessionArray = entriesFromSession.toArray(
72 new String[entriesFromSession.size()]);
73
74 if (_log.isDebugEnabled()) {
75 _log.debug(
76 "Entries from session " +
77 StringUtil.merge(entriesFromSessionArray));
78 }
79
80 String[] entries = ArrayUtil.append(
81 entriesFromURLArray, entriesFromSessionArray);
82
83 req.setAttribute(WebKeys.TAGS_COMPILER_ENTRIES, entries);
84
85
87 HttpServletRequest httpReq = PortalUtil.getHttpServletRequest(req);
88
89 ThemeDisplay themeDisplay = (ThemeDisplay)req.getAttribute(
90 WebKeys.THEME_DISPLAY);
91
92 RenderParametersPool.clear(
93 httpReq, themeDisplay.getPlid(), PortletKeys.TAGS_COMPILER);
94 }
95
96 private static Log _log = LogFactory.getLog(TagsCompilerPortlet.class);
97
98 }