1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.pluto.portalImpl.core;
21
22 import javax.portlet.PortletMode;
23 import javax.portlet.WindowState;
24 import javax.servlet.ServletConfig;
25 import javax.servlet.http.HttpServletRequest;
26
27 import org.apache.pluto.om.window.PortletWindow;
28 import org.apache.pluto.services.information.PortletActionProvider;
29
30 /***
31
32 *
33 * To change this generated comment edit the template variable "typecomment":
34 * Window>Preferences>Java>Templates.
35 * To enable and disable the creation of type comments go to
36 * Window>Preferences>Java>Code Generation.
37 */
38 public class PortletActionProviderImpl implements PortletActionProvider {
39
40
41 private HttpServletRequest request;
42 private ServletConfig config;
43 private PortletWindow portletWindow;
44
45 public PortletActionProviderImpl(HttpServletRequest request,
46 ServletConfig config,
47 PortletWindow portletWindow)
48 {
49 this.request = request;
50 this.config = config;
51 this.portletWindow = portletWindow;
52 }
53
54
55
56
57
58
59 public void changePortletMode(PortletMode mode)
60 {
61 PortalEnvironment env = PortalEnvironment.getPortalEnvironment(request);
62
63 PortalURL url = env.getRequestedPortalURL();
64 PortalControlParameter controlURL = new PortalControlParameter(url);
65 if (!(controlURL.getMode(portletWindow).equals(mode)) && mode != null) {
66 controlURL.setMode(portletWindow, mode);
67 env.changeRequestedPortalURL(url, controlURL);
68 }
69 }
70
71
72
73
74 public void changePortletWindowState(WindowState state)
75 {
76 PortalEnvironment env = (PortalEnvironment) request.getAttribute(PortalEnvironment.REQUEST_PORTALENV);
77
78 PortalURL url = env.getRequestedPortalURL();
79 PortalControlParameter controlURL = new PortalControlParameter(url);
80
81 if (!(controlURL.getState(portletWindow).equals(state)) && state != null) {
82 controlURL.setState(portletWindow, state);
83 env.changeRequestedPortalURL(url, controlURL);
84 }
85 }
86
87 }