001    /**
002     * Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portal.language;
016    
017    import com.liferay.portal.kernel.language.LanguageUtil;
018    import com.liferay.portal.kernel.language.LanguageWrapper;
019    import com.liferay.portal.kernel.language.UnicodeLanguage;
020    import com.liferay.portal.kernel.security.pacl.DoPrivileged;
021    import com.liferay.portal.kernel.util.UnicodeFormatter;
022    
023    import java.util.Locale;
024    
025    import javax.portlet.PortletConfig;
026    
027    import javax.servlet.jsp.PageContext;
028    
029    /**
030     * @author Brian Wing Shun Chan
031     */
032    @DoPrivileged
033    public class UnicodeLanguageImpl implements UnicodeLanguage {
034    
035            public String format(Locale locale, String pattern, Object argument) {
036                    return UnicodeFormatter.toString(
037                            LanguageUtil.format(locale, pattern, argument));
038            }
039    
040            public String format(
041                    Locale locale, String pattern, Object argument,
042                    boolean translateArguments) {
043    
044                    return UnicodeFormatter.toString(
045                            LanguageUtil.format(locale, pattern, argument, translateArguments));
046            }
047    
048            public String format(Locale locale, String pattern, Object[] arguments) {
049                    return UnicodeFormatter.toString(
050                            LanguageUtil.format(locale, pattern, arguments));
051            }
052    
053            public String format(
054                    Locale locale, String pattern, Object[] arguments,
055                    boolean translateArguments) {
056    
057                    return UnicodeFormatter.toString(
058                            LanguageUtil.format(
059                                    locale, pattern, arguments, translateArguments));
060            }
061    
062            public String format(
063                    PageContext pageContext, String pattern, LanguageWrapper argument) {
064    
065                    return UnicodeFormatter.toString(
066                            LanguageUtil.format(pageContext, pattern, argument));
067            }
068    
069            public String format(
070                    PageContext pageContext, String pattern, LanguageWrapper argument,
071                    boolean translateArguments) {
072    
073                    return UnicodeFormatter.toString(
074                            LanguageUtil.format(
075                                    pageContext, pattern, argument, translateArguments));
076            }
077    
078            public String format(
079                    PageContext pageContext, String pattern, LanguageWrapper[] arguments) {
080    
081                    return UnicodeFormatter.toString(
082                            LanguageUtil.format(pageContext, pattern, arguments));
083            }
084    
085            public String format(
086                    PageContext pageContext, String pattern, LanguageWrapper[] arguments,
087                    boolean translateArguments) {
088    
089                    return UnicodeFormatter.toString(
090                            LanguageUtil.format(
091                                    pageContext, pattern, arguments, translateArguments));
092            }
093    
094            public String format(
095                    PageContext pageContext, String pattern, Object argument) {
096    
097                    return UnicodeFormatter.toString(
098                            LanguageUtil.format(pageContext, pattern, argument));
099            }
100    
101            public String format(
102                    PageContext pageContext, String pattern, Object argument,
103                    boolean translateArguments) {
104    
105                    return UnicodeFormatter.toString(
106                            LanguageUtil.format(
107                                    pageContext, pattern, argument, translateArguments));
108            }
109    
110            public String format(
111                    PageContext pageContext, String pattern, Object[] arguments) {
112    
113                    return UnicodeFormatter.toString(
114                            LanguageUtil.format(pageContext, pattern, arguments));
115            }
116    
117            public String format(
118                    PageContext pageContext, String pattern, Object[] arguments,
119                    boolean translateArguments) {
120    
121                    return UnicodeFormatter.toString(
122                            LanguageUtil.format(
123                                    pageContext, pattern, arguments, translateArguments));
124            }
125    
126            public String format(
127                    PortletConfig portletConfig, Locale locale, String pattern,
128                    Object argument) {
129    
130                    return UnicodeFormatter.toString(
131                            LanguageUtil.format(portletConfig, locale, pattern, argument));
132            }
133    
134            public String format(
135                    PortletConfig portletConfig, Locale locale, String pattern,
136                    Object argument, boolean translateArguments) {
137    
138                    return UnicodeFormatter.toString(
139                            LanguageUtil.format(
140                                    portletConfig, locale, pattern, argument, translateArguments));
141            }
142    
143            public String format(
144                    PortletConfig portletConfig, Locale locale, String pattern,
145                    Object[] arguments) {
146    
147                    return UnicodeFormatter.toString(
148                            LanguageUtil.format(portletConfig, locale, pattern, arguments));
149            }
150    
151            public String format(
152                    PortletConfig portletConfig, Locale locale, String pattern,
153                    Object[] arguments, boolean translateArguments) {
154    
155                    return UnicodeFormatter.toString(
156                            LanguageUtil.format(
157                                    portletConfig, locale, pattern, arguments, translateArguments));
158            }
159    
160            public String get(Locale locale, String key) {
161                    return UnicodeFormatter.toString(LanguageUtil.get(locale, key));
162            }
163    
164            public String get(Locale locale, String key, String defaultValue) {
165                    return UnicodeFormatter.toString(
166                            LanguageUtil.get(locale, key, defaultValue));
167            }
168    
169            public String get(PageContext pageContext, String key) {
170                    return UnicodeFormatter.toString(LanguageUtil.get(pageContext, key));
171            }
172    
173            public String get(
174                    PageContext pageContext, String key, String defaultValue) {
175    
176                    return UnicodeFormatter.toString(
177                            LanguageUtil.get(pageContext, key, defaultValue));
178            }
179    
180            public String get(PortletConfig portletConfig, Locale locale, String key) {
181                    return UnicodeFormatter.toString(
182                            LanguageUtil.get(portletConfig, locale, key));
183            }
184    
185            public String get(
186                    PortletConfig portletConfig, Locale locale, String key,
187                    String defaultValue) {
188    
189                    return UnicodeFormatter.toString(
190                            LanguageUtil.get(portletConfig, locale, key, defaultValue));
191            }
192    
193            public String getTimeDescription(
194                    PageContext pageContext, long milliseconds) {
195    
196                    return UnicodeFormatter.toString(
197                            LanguageUtil.getTimeDescription(pageContext, milliseconds));
198            }
199    
200            public String getTimeDescription(
201                    PageContext pageContext, Long milliseconds) {
202    
203                    return UnicodeFormatter.toString(
204                            LanguageUtil.getTimeDescription(pageContext, milliseconds));
205            }
206    
207    }