1
22
23 package com.liferay.portlet;
24
25 import com.liferay.portal.kernel.portlet.LiferayPortletMode;
26 import com.liferay.portal.kernel.portlet.LiferayWindowState;
27 import com.liferay.portal.kernel.util.ReleaseInfo;
28
29 import java.util.ArrayList;
30 import java.util.Collections;
31 import java.util.Enumeration;
32 import java.util.List;
33 import java.util.Properties;
34
35 import javax.portlet.PortalContext;
36 import javax.portlet.PortletMode;
37 import javax.portlet.WindowState;
38
39
45 public class PortalContextImpl implements PortalContext {
46
47 static Properties props = new Properties();
48 static List<PortletMode> portletModes = new ArrayList<PortletMode>();
49 static List<WindowState> windowStates = new ArrayList<WindowState>();
50
51 static {
52 portletModes.add(PortletMode.EDIT);
53 portletModes.add(PortletMode.HELP);
54 portletModes.add(PortletMode.VIEW);
55 portletModes.add(LiferayPortletMode.ABOUT);
56 portletModes.add(LiferayPortletMode.CONFIG);
57 portletModes.add(LiferayPortletMode.EDIT_DEFAULTS);
58 portletModes.add(LiferayPortletMode.PREVIEW);
59 portletModes.add(LiferayPortletMode.PRINT);
60
61 windowStates.add(WindowState.MAXIMIZED);
62 windowStates.add(WindowState.MINIMIZED);
63 windowStates.add(WindowState.NORMAL);
64 windowStates.add(LiferayWindowState.EXCLUSIVE);
65 windowStates.add(LiferayWindowState.POP_UP);
66 }
67
68 public static boolean isSupportedPortletMode(PortletMode portletMode) {
69 Enumeration<PortletMode> enu = Collections.enumeration(portletModes);
70
71 while (enu.hasMoreElements()) {
72 PortletMode supported = enu.nextElement();
73
74 if (supported.equals(portletMode)) {
75 return true;
76 }
77 }
78
79 return false;
80 }
81
82 public static boolean isSupportedWindowState(WindowState windowState) {
83 Enumeration<WindowState> enu = Collections.enumeration(windowStates);
84
85 while (enu.hasMoreElements()) {
86 WindowState supported = enu.nextElement();
87
88 if (supported.equals(windowState)) {
89 return true;
90 }
91 }
92
93 return false;
94 }
95
96 public String getPortalInfo() {
97 return ReleaseInfo.getReleaseInfo();
98 }
99
100 public String getProperty(String name) {
101 return props.getProperty(name);
102 }
103
104 public Enumeration<String> getPropertyNames() {
105 return (Enumeration<String>)props.propertyNames();
106 }
107
108 public Enumeration<PortletMode> getSupportedPortletModes() {
109 return Collections.enumeration(portletModes);
110 }
111
112 public Enumeration<WindowState> getSupportedWindowStates() {
113 return Collections.enumeration(windowStates);
114 }
115
116 }