001
014
015 package com.liferay.portal.kernel.util;
016
017 import com.liferay.portal.kernel.json.JSONObject;
018 import com.liferay.portal.kernel.language.LanguageUtil;
019 import com.liferay.portal.kernel.security.pacl.permission.PortalRuntimePermission;
020
021 import java.util.ArrayList;
022 import java.util.Collections;
023 import java.util.List;
024 import java.util.Locale;
025 import java.util.Map;
026
027 import javax.portlet.PortletPreferences;
028 import javax.portlet.PortletRequest;
029
030
038 public class LocalizationUtil {
039
040 public static Object deserialize(JSONObject jsonObject) {
041 return getLocalization().deserialize(jsonObject);
042 }
043
044 public static String[] getAvailableLocales(String xml) {
045 return getLocalization().getAvailableLocales(xml);
046 }
047
048 public static Locale getDefaultImportLocale(
049 String className, long classPK, Locale contentDefaultLocale,
050 Locale[] contentAvailableLocales) {
051
052 return getLocalization().getDefaultImportLocale(
053 className, classPK, contentDefaultLocale, contentAvailableLocales);
054 }
055
056 public static String getDefaultLocale(String xml) {
057 return getLocalization().getDefaultLocale(xml);
058 }
059
060 public static Localization getLocalization() {
061 PortalRuntimePermission.checkGetBeanProperty(LocalizationUtil.class);
062
063 return _localization;
064 }
065
066 public static String getLocalization(
067 String xml, String requestedLanguageId) {
068
069 return getLocalization().getLocalization(xml, requestedLanguageId);
070 }
071
072 public static String getLocalization(
073 String xml, String requestedLanguageId, boolean useDefault) {
074
075 return getLocalization().getLocalization(
076 xml, requestedLanguageId, useDefault);
077 }
078
079 public static Map<Locale, String> getLocalizationMap(
080 PortletPreferences preferences, String parameter) {
081
082 return getLocalization().getLocalizationMap(preferences, parameter);
083 }
084
085 public static Map<Locale, String> getLocalizationMap(
086 PortletRequest portletRequest, String parameter) {
087
088 return getLocalization().getLocalizationMap(portletRequest, parameter);
089 }
090
091 public static Map<Locale, String> getLocalizationMap(String xml) {
092 return getLocalization().getLocalizationMap(xml);
093 }
094
095 public static Map<Locale, String> getLocalizationMap(
096 String bundleName, ClassLoader classLoader, String key,
097 boolean includeBetaLocales) {
098
099 return getLocalization().getLocalizationMap(
100 bundleName, classLoader, key, includeBetaLocales);
101 }
102
103 public static Map<Locale, String> getLocalizationMap(
104 String[] languageIds, String[] values) {
105
106 return getLocalization().getLocalizationMap(languageIds, values);
107 }
108
109 public static String getLocalizationXmlFromPreferences(
110 PortletPreferences preferences, PortletRequest portletRequest,
111 String parameter) {
112
113 return getLocalization().getLocalizationXmlFromPreferences(
114 preferences, portletRequest, parameter);
115 }
116
117
120 public static Map<Locale, String> getLocalizedParameter(
121 PortletRequest portletRequest, String parameter) {
122
123 return getLocalization().getLocalizedParameter(
124 portletRequest, parameter);
125 }
126
127 public static List<Locale> getModifiedLocales(
128 Map<Locale, String> oldMap, Map<Locale, String> newMap) {
129
130 if ((newMap == null) || newMap.isEmpty()) {
131 return Collections.emptyList();
132 }
133
134 List<Locale> modifiedLocales = new ArrayList<Locale>();
135
136 Locale[] locales = LanguageUtil.getAvailableLocales();
137
138 for (Locale locale : locales) {
139 String oldValue = oldMap.get(locale);
140 String newValue = newMap.get(locale);
141
142 if (!oldValue.equals(newValue)) {
143 modifiedLocales.add(locale);
144 }
145 }
146
147 return modifiedLocales;
148 }
149
150 public static String getPreferencesKey(String key, String languageId) {
151 return getLocalization().getPreferencesKey(key, languageId);
152 }
153
154 public static String getPreferencesValue(
155 PortletPreferences preferences, String key, String languageId) {
156
157 return getLocalization().getPreferencesValue(
158 preferences, key, languageId);
159 }
160
161 public static String getPreferencesValue(
162 PortletPreferences preferences, String key, String languageId,
163 boolean useDefault) {
164
165 return getLocalization().getPreferencesValue(
166 preferences, key, languageId, useDefault);
167 }
168
169 public static String[] getPreferencesValues(
170 PortletPreferences preferences, String key, String languageId) {
171
172 return getLocalization().getPreferencesValues(
173 preferences, key, languageId);
174 }
175
176 public static String[] getPreferencesValues(
177 PortletPreferences preferences, String key, String languageId,
178 boolean useDefault) {
179
180 return getLocalization().getPreferencesValues(
181 preferences, key, languageId, useDefault);
182 }
183
184 public static String removeLocalization(
185 String xml, String key, String requestedLanguageId) {
186
187 return getLocalization().removeLocalization(
188 xml, key, requestedLanguageId);
189 }
190
191 public static String removeLocalization(
192 String xml, String key, String requestedLanguageId, boolean cdata) {
193
194 return getLocalization().removeLocalization(
195 xml, key, requestedLanguageId, cdata);
196 }
197
198 public static String removeLocalization(
199 String xml, String key, String requestedLanguageId, boolean cdata,
200 boolean localized) {
201
202 return getLocalization().removeLocalization(
203 xml, key, requestedLanguageId, cdata, localized);
204 }
205
206 public static void setLocalizedPreferencesValues(
207 PortletRequest portletRequest, PortletPreferences preferences,
208 String parameter)
209 throws Exception {
210
211 getLocalization().setLocalizedPreferencesValues(
212 portletRequest, preferences, parameter);
213 }
214
215 public static void setPreferencesValue(
216 PortletPreferences preferences, String key, String languageId,
217 String value)
218 throws Exception {
219
220 getLocalization().setPreferencesValue(
221 preferences, key, languageId, value);
222 }
223
224 public static void setPreferencesValues(
225 PortletPreferences preferences, String key, String languageId,
226 String[] values)
227 throws Exception {
228
229 getLocalization().setPreferencesValues(
230 preferences, key, languageId, values);
231 }
232
233 public static String updateLocalization(
234 String xml, String key, String value) {
235
236 return getLocalization().updateLocalization(xml, key, value);
237 }
238
239 public static String updateLocalization(
240 String xml, String key, String value, String requestedLanguageId) {
241
242 return getLocalization().updateLocalization(
243 xml, key, value, requestedLanguageId);
244 }
245
246 public static String updateLocalization(
247 String xml, String key, String value, String requestedLanguageId,
248 String defaultLanguageId) {
249
250 return getLocalization().updateLocalization(
251 xml, key, value, requestedLanguageId, defaultLanguageId);
252 }
253
254 public static String updateLocalization(
255 String xml, String key, String value, String requestedLanguageId,
256 String defaultLanguageId, boolean cdata) {
257
258 return getLocalization().updateLocalization(
259 xml, key, value, requestedLanguageId, defaultLanguageId, cdata);
260 }
261
262 public static String updateLocalization(
263 String xml, String key, String value, String requestedLanguageId,
264 String defaultLanguageId, boolean cdata, boolean localized) {
265
266 return getLocalization().updateLocalization(
267 xml, key, value, requestedLanguageId, defaultLanguageId, cdata,
268 localized);
269 }
270
271 public void setLocalization(Localization localization) {
272 PortalRuntimePermission.checkSetBeanProperty(getClass());
273
274 _localization = localization;
275 }
276
277 private static Localization _localization;
278
279 }