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 import com.liferay.portal.kernel.settings.Settings;
021 import com.liferay.portal.kernel.xml.Document;
022
023 import java.util.ArrayList;
024 import java.util.Collections;
025 import java.util.List;
026 import java.util.Locale;
027 import java.util.Map;
028
029 import javax.portlet.PortletPreferences;
030 import javax.portlet.PortletRequest;
031
032 import javax.servlet.http.HttpServletRequest;
033
034
042 public class LocalizationUtil {
043
044 public static Object deserialize(JSONObject jsonObject) {
045 return getLocalization().deserialize(jsonObject);
046 }
047
048 public static String[] getAvailableLanguageIds(Document document) {
049 return getLocalization().getAvailableLanguageIds(document);
050 }
051
052 public static String[] getAvailableLanguageIds(String xml) {
053 return getLocalization().getAvailableLanguageIds(xml);
054 }
055
056
060 @Deprecated
061 public static String[] getAvailableLocales(String xml) {
062 return getAvailableLanguageIds(xml);
063 }
064
065 public static Locale getDefaultImportLocale(
066 String className, long classPK, Locale contentDefaultLocale,
067 Locale[] contentAvailableLocales) {
068
069 return getLocalization().getDefaultImportLocale(
070 className, classPK, contentDefaultLocale, contentAvailableLocales);
071 }
072
073 public static String getDefaultLanguageId(Document document) {
074 return getLocalization().getDefaultLanguageId(document);
075 }
076
077 public static String getDefaultLanguageId(
078 Document document, Locale defaultLocale) {
079
080 return getLocalization().getDefaultLanguageId(document, defaultLocale);
081 }
082
083 public static String getDefaultLanguageId(String xml) {
084 return getLocalization().getDefaultLanguageId(xml);
085 }
086
087 public static String getDefaultLanguageId(
088 String xml, Locale defaultLocale) {
089
090 return getLocalization().getDefaultLanguageId(xml, defaultLocale);
091 }
092
093
097 @Deprecated
098 public static String getDefaultLocale(String xml) {
099 return getDefaultLanguageId(xml);
100 }
101
102 public static Localization getLocalization() {
103 PortalRuntimePermission.checkGetBeanProperty(LocalizationUtil.class);
104
105 return _localization;
106 }
107
108 public static String getLocalization(
109 String xml, String requestedLanguageId) {
110
111 return getLocalization().getLocalization(xml, requestedLanguageId);
112 }
113
114 public static String getLocalization(
115 String xml, String requestedLanguageId, boolean useDefault) {
116
117 return getLocalization().getLocalization(
118 xml, requestedLanguageId, useDefault);
119 }
120
121 public static String getLocalization(
122 String xml, String requestedLanguageId, boolean useDefault,
123 String defaultValue) {
124
125 return getLocalization().getLocalization(
126 xml, requestedLanguageId, useDefault, defaultValue);
127 }
128
129 public static Map<Locale, String> getLocalizationMap(
130 HttpServletRequest request, String parameter) {
131
132 return getLocalization().getLocalizationMap(request, parameter);
133 }
134
135 public static Map<Locale, String> getLocalizationMap(
136 PortletPreferences preferences, String preferenceName) {
137
138 return getLocalization().getLocalizationMap(
139 preferences, preferenceName);
140 }
141
142 public static Map<Locale, String> getLocalizationMap(
143 PortletPreferences preferences, String preferenceName,
144 String propertyName) {
145
146 return getLocalization().getLocalizationMap(
147 preferences, preferenceName, propertyName);
148 }
149
150 public static Map<Locale, String> getLocalizationMap(
151 PortletRequest portletRequest, String parameter) {
152
153 return getLocalization().getLocalizationMap(portletRequest, parameter);
154 }
155
156 public static Map<Locale, String> getLocalizationMap(String xml) {
157 return getLocalization().getLocalizationMap(xml);
158 }
159
160 public static Map<Locale, String> getLocalizationMap(
161 String xml, boolean useDefault) {
162
163 return getLocalization().getLocalizationMap(xml, useDefault);
164 }
165
166 public static Map<Locale, String> getLocalizationMap(
167 String bundleName, ClassLoader classLoader, String key,
168 boolean includeBetaLocales) {
169
170 return getLocalization().getLocalizationMap(
171 bundleName, classLoader, key, includeBetaLocales);
172 }
173
174 public static Map<Locale, String> getLocalizationMap(
175 String[] languageIds, String[] values) {
176
177 return getLocalization().getLocalizationMap(languageIds, values);
178 }
179
180 public static String getLocalizationXmlFromPreferences(
181 PortletPreferences preferences, PortletRequest portletRequest,
182 String parameter) {
183
184 return getLocalization().getLocalizationXmlFromPreferences(
185 preferences, portletRequest, parameter);
186 }
187
188 public static String getLocalizationXmlFromPreferences(
189 PortletPreferences preferences, PortletRequest portletRequest,
190 String parameter, String defaultValue) {
191
192 return getLocalization().getLocalizationXmlFromPreferences(
193 preferences, portletRequest, parameter, defaultValue);
194 }
195
196 public static String getLocalizationXmlFromPreferences(
197 PortletPreferences preferences, PortletRequest portletRequest,
198 String parameter, String prefix, String defaultValue) {
199
200 return getLocalization().getLocalizationXmlFromPreferences(
201 preferences, portletRequest, parameter, prefix, defaultValue);
202 }
203
204 public static String getLocalizedName(String name, String languageId) {
205 return getLocalization().getLocalizedName(name, languageId);
206 }
207
208
211 @Deprecated
212 public static Map<Locale, String> getLocalizedParameter(
213 PortletRequest portletRequest, String parameter) {
214
215 return getLocalization().getLocalizedParameter(
216 portletRequest, parameter);
217 }
218
219 public static List<Locale> getModifiedLocales(
220 Map<Locale, String> oldMap, Map<Locale, String> newMap) {
221
222 if ((newMap == null) || newMap.isEmpty()) {
223 return Collections.emptyList();
224 }
225
226 List<Locale> modifiedLocales = new ArrayList<Locale>();
227
228 Locale[] locales = LanguageUtil.getAvailableLocales();
229
230 for (Locale locale : locales) {
231 String oldValue = oldMap.get(locale);
232 String newValue = newMap.get(locale);
233
234 if (!oldValue.equals(newValue)) {
235 modifiedLocales.add(locale);
236 }
237 }
238
239 return modifiedLocales;
240 }
241
242 public static String getPreferencesKey(String key, String languageId) {
243 return getLocalization().getPreferencesKey(key, languageId);
244 }
245
246 public static String getPreferencesValue(
247 PortletPreferences preferences, String key, String languageId) {
248
249 return getLocalization().getPreferencesValue(
250 preferences, key, languageId);
251 }
252
253 public static String getPreferencesValue(
254 PortletPreferences preferences, String key, String languageId,
255 boolean useDefault) {
256
257 return getLocalization().getPreferencesValue(
258 preferences, key, languageId, useDefault);
259 }
260
261 public static String[] getPreferencesValues(
262 PortletPreferences preferences, String key, String languageId) {
263
264 return getLocalization().getPreferencesValues(
265 preferences, key, languageId);
266 }
267
268 public static String[] getPreferencesValues(
269 PortletPreferences preferences, String key, String languageId,
270 boolean useDefault) {
271
272 return getLocalization().getPreferencesValues(
273 preferences, key, languageId, useDefault);
274 }
275
276 public static String getSettingsValue(
277 Settings settings, String key, String languageId) {
278
279 return getLocalization().getSettingsValue(settings, key, languageId);
280 }
281
282 public static String getSettingsValue(
283 Settings settings, String key, String languageId, boolean useDefault) {
284
285 return getLocalization().getSettingsValue(
286 settings, key, languageId, useDefault);
287 }
288
289 public static String[] getSettingsValues(
290 Settings settings, String key, String languageId) {
291
292 return getLocalization().getSettingsValues(settings, key, languageId);
293 }
294
295 public static String[] getSettingsValues(
296 Settings settings, String key, String languageId, boolean useDefault) {
297
298 return getLocalization().getSettingsValues(
299 settings, key, languageId, useDefault);
300 }
301
302 public static String removeLocalization(
303 String xml, String key, String requestedLanguageId) {
304
305 return getLocalization().removeLocalization(
306 xml, key, requestedLanguageId);
307 }
308
309 public static String removeLocalization(
310 String xml, String key, String requestedLanguageId, boolean cdata) {
311
312 return getLocalization().removeLocalization(
313 xml, key, requestedLanguageId, cdata);
314 }
315
316 public static String removeLocalization(
317 String xml, String key, String requestedLanguageId, boolean cdata,
318 boolean localized) {
319
320 return getLocalization().removeLocalization(
321 xml, key, requestedLanguageId, cdata, localized);
322 }
323
324 public static void setLocalizedPreferencesValues(
325 PortletRequest portletRequest, PortletPreferences preferences,
326 String parameter)
327 throws Exception {
328
329 getLocalization().setLocalizedPreferencesValues(
330 portletRequest, preferences, parameter);
331 }
332
333 public static void setPreferencesValue(
334 PortletPreferences preferences, String key, String languageId,
335 String value)
336 throws Exception {
337
338 getLocalization().setPreferencesValue(
339 preferences, key, languageId, value);
340 }
341
342 public static void setPreferencesValues(
343 PortletPreferences preferences, String key, String languageId,
344 String[] values)
345 throws Exception {
346
347 getLocalization().setPreferencesValues(
348 preferences, key, languageId, values);
349 }
350
351 public static String updateLocalization(
352 Map<Locale, String> localizationMap, String xml, String key,
353 String defaultLanguageId) {
354
355 return getLocalization().updateLocalization(
356 localizationMap, xml, key, defaultLanguageId);
357 }
358
359 public static String updateLocalization(
360 String xml, String key, String value) {
361
362 return getLocalization().updateLocalization(xml, key, value);
363 }
364
365 public static String updateLocalization(
366 String xml, String key, String value, String requestedLanguageId) {
367
368 return getLocalization().updateLocalization(
369 xml, key, value, requestedLanguageId);
370 }
371
372 public static String updateLocalization(
373 String xml, String key, String value, String requestedLanguageId,
374 String defaultLanguageId) {
375
376 return getLocalization().updateLocalization(
377 xml, key, value, requestedLanguageId, defaultLanguageId);
378 }
379
380 public static String updateLocalization(
381 String xml, String key, String value, String requestedLanguageId,
382 String defaultLanguageId, boolean cdata) {
383
384 return getLocalization().updateLocalization(
385 xml, key, value, requestedLanguageId, defaultLanguageId, cdata);
386 }
387
388 public static String updateLocalization(
389 String xml, String key, String value, String requestedLanguageId,
390 String defaultLanguageId, boolean cdata, boolean localized) {
391
392 return getLocalization().updateLocalization(
393 xml, key, value, requestedLanguageId, defaultLanguageId, cdata,
394 localized);
395 }
396
397 public void setLocalization(Localization localization) {
398 PortalRuntimePermission.checkSetBeanProperty(getClass());
399
400 _localization = localization;
401 }
402
403 private static Localization _localization;
404
405 }