1
22
23 package com.liferay.portlet.webproxy.action;
24
25 import com.liferay.portal.kernel.portlet.BaseConfigurationAction;
26 import com.liferay.portal.kernel.servlet.SessionMessages;
27 import com.liferay.portal.kernel.util.Constants;
28 import com.liferay.portal.kernel.util.HttpUtil;
29 import com.liferay.portal.kernel.util.ParamUtil;
30 import com.liferay.portal.kernel.util.StringUtil;
31 import com.liferay.portlet.PortletPreferencesFactoryUtil;
32
33 import javax.portlet.ActionRequest;
34 import javax.portlet.ActionResponse;
35 import javax.portlet.PortletConfig;
36 import javax.portlet.PortletPreferences;
37 import javax.portlet.RenderRequest;
38 import javax.portlet.RenderResponse;
39
40
45 public class ConfigurationActionImpl extends BaseConfigurationAction {
46
47 public void processAction(
48 PortletConfig portletConfig, ActionRequest actionRequest,
49 ActionResponse actionResponse)
50 throws Exception {
51
52 String cmd = ParamUtil.getString(actionRequest, Constants.CMD);
53
54 if (!cmd.equals(Constants.UPDATE)) {
55 return;
56 }
57
58 String initUrl = ParamUtil.getString(actionRequest, "initUrl");
59
60 if (!initUrl.startsWith("/") &&
61 !StringUtil.startsWith(initUrl, "http://") &&
62 !StringUtil.startsWith(initUrl, "https://") &&
63 !StringUtil.startsWith(initUrl, "mhtml://")) {
64
65 initUrl = HttpUtil.getProtocol(actionRequest) + "://" + initUrl;
66 }
67
68 String scope = ParamUtil.getString(actionRequest, "scope");
69 String proxyHost = ParamUtil.getString(actionRequest, "proxyHost");
70 String proxyPort = ParamUtil.getString(actionRequest, "proxyPort");
71 String proxyAuthentication = ParamUtil.getString(
72 actionRequest, "proxyAuthentication");
73 String proxyAuthenticationUsername = ParamUtil.getString(
74 actionRequest, "proxyAuthenticationUsername");
75 String proxyAuthenticationPassword = ParamUtil.getString(
76 actionRequest, "proxyAuthenticationPassword");
77 String proxyAuthenticationHost = ParamUtil.getString(
78 actionRequest, "proxyAuthenticationHost");
79 String proxyAuthenticationDomain = ParamUtil.getString(
80 actionRequest, "proxyAuthenticationDomain");
81 String stylesheet = ParamUtil.getString(actionRequest, "stylesheet");
82
83 String portletResource = ParamUtil.getString(
84 actionRequest, "portletResource");
85
86 PortletPreferences preferences =
87 PortletPreferencesFactoryUtil.getPortletSetup(
88 actionRequest, portletResource);
89
90 preferences.setValue("initUrl", initUrl);
91 preferences.setValue("scope", scope);
92 preferences.setValue("proxyHost", proxyHost);
93 preferences.setValue("proxyPort", proxyPort);
94 preferences.setValue("proxyAuthentication", proxyAuthentication);
95 preferences.setValue(
96 "proxyAuthenticationUsername", proxyAuthenticationUsername);
97 preferences.setValue(
98 "proxyAuthenticationPassword", proxyAuthenticationPassword);
99 preferences.setValue(
100 "proxyAuthenticationHost", proxyAuthenticationHost);
101 preferences.setValue(
102 "proxyAuthenticationDomain", proxyAuthenticationDomain);
103 preferences.setValue("stylesheet", stylesheet);
104
105 preferences.store();
106
107 SessionMessages.add(
108 actionRequest, portletConfig.getPortletName() + ".doConfigure");
109 }
110
111 public String render(
112 PortletConfig portletConfig, RenderRequest renderRequest,
113 RenderResponse renderResponse)
114 throws Exception {
115
116 return "/html/portlet/web_proxy/configuration.jsp";
117 }
118
119 }