1
22
23 package com.liferay.portlet.layoutconfiguration.util.velocity;
24
25 import com.liferay.portal.kernel.util.StringMaker;
26 import com.liferay.portal.kernel.util.Validator;
27 import com.liferay.portal.model.impl.PortletImpl;
28 import com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil;
29
30 import java.util.Map;
31
32 import javax.portlet.RenderRequest;
33 import javax.portlet.RenderResponse;
34
35 import javax.servlet.ServletContext;
36 import javax.servlet.http.HttpServletRequest;
37 import javax.servlet.http.HttpServletResponse;
38
39
46 public class PortletLogic extends RuntimeLogic {
47
48 public PortletLogic(
49 ServletContext ctx, HttpServletRequest req, HttpServletResponse res,
50 String portletId) {
51
52 this(ctx, req, res, null, null);
53
54 _portletId = portletId;
55 }
56
57 public PortletLogic(
58 ServletContext ctx, HttpServletRequest req, HttpServletResponse res,
59 RenderRequest renderRequest, RenderResponse renderResponse) {
60
61 _ctx = ctx;
62 _req = req;
63 _res = res;
64 _renderRequest = renderRequest;
65 _renderResponse = renderResponse;
66 }
67
68 public void processContent(StringMaker sm, Map<String, String> attributes)
69 throws Exception {
70
71 String rootPortletId = attributes.get("name");
72 String instanceId = attributes.get("instance");
73 String queryString = attributes.get("queryString");
74
75 String portletId = _portletId;
76
77 if (portletId == null) {
78 portletId = rootPortletId;
79
80 if (Validator.isNotNull(instanceId)) {
81 portletId += PortletImpl.INSTANCE_SEPARATOR + instanceId;
82 }
83 }
84
85 RuntimePortletUtil.processPortlet(
86 sm, _ctx, _req, _res, _renderRequest, _renderResponse, portletId,
87 queryString);
88 }
89
90 private ServletContext _ctx;
91 private HttpServletRequest _req;
92 private HttpServletResponse _res;
93 private RenderRequest _renderRequest;
94 private RenderResponse _renderResponse;
95 private String _portletId;
96
97 }