001    /**
002     * Copyright (c) 2000-present 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    import java.util.ResourceBundle;
025    
026    import javax.servlet.http.HttpServletRequest;
027    
028    /**
029     * @author Brian Wing Shun Chan
030     */
031    @DoPrivileged
032    public class UnicodeLanguageImpl implements UnicodeLanguage {
033    
034            @Override
035            public String format(
036                    HttpServletRequest request, String pattern, LanguageWrapper argument) {
037    
038                    return UnicodeFormatter.toString(
039                            LanguageUtil.format(request, pattern, argument));
040            }
041    
042            @Override
043            public String format(
044                    HttpServletRequest request, String pattern, LanguageWrapper argument,
045                    boolean translateArguments) {
046    
047                    return UnicodeFormatter.toString(
048                            LanguageUtil.format(
049                                    request, pattern, argument, translateArguments));
050            }
051    
052            @Override
053            public String format(
054                    HttpServletRequest request, String pattern,
055                    LanguageWrapper[] arguments) {
056    
057                    return UnicodeFormatter.toString(
058                            LanguageUtil.format(request, pattern, arguments));
059            }
060    
061            @Override
062            public String format(
063                    HttpServletRequest request, String pattern, LanguageWrapper[] arguments,
064                    boolean translateArguments) {
065    
066                    return UnicodeFormatter.toString(
067                            LanguageUtil.format(
068                                    request, pattern, arguments, translateArguments));
069            }
070    
071            @Override
072            public String format(
073                    HttpServletRequest request, String pattern, Object argument) {
074    
075                    return UnicodeFormatter.toString(
076                            LanguageUtil.format(request, pattern, argument));
077            }
078    
079            @Override
080            public String format(
081                    HttpServletRequest request, String pattern, Object argument,
082                    boolean translateArguments) {
083    
084                    return UnicodeFormatter.toString(
085                            LanguageUtil.format(
086                                    request, pattern, argument, translateArguments));
087            }
088    
089            @Override
090            public String format(
091                    HttpServletRequest request, String pattern, Object[] arguments) {
092    
093                    return UnicodeFormatter.toString(
094                            LanguageUtil.format(request, pattern, arguments));
095            }
096    
097            @Override
098            public String format(
099                    HttpServletRequest request, String pattern, Object[] arguments,
100                    boolean translateArguments) {
101    
102                    return UnicodeFormatter.toString(
103                            LanguageUtil.format(
104                                    request, pattern, arguments, translateArguments));
105            }
106    
107            @Override
108            public String format(Locale locale, String pattern, Object argument) {
109                    return UnicodeFormatter.toString(
110                            LanguageUtil.format(locale, pattern, argument));
111            }
112    
113            @Override
114            public String format(
115                    Locale locale, String pattern, Object argument,
116                    boolean translateArguments) {
117    
118                    return UnicodeFormatter.toString(
119                            LanguageUtil.format(locale, pattern, argument, translateArguments));
120            }
121    
122            @Override
123            public String format(Locale locale, String pattern, Object[] arguments) {
124                    return UnicodeFormatter.toString(
125                            LanguageUtil.format(locale, pattern, arguments));
126            }
127    
128            @Override
129            public String format(
130                    Locale locale, String pattern, Object[] arguments,
131                    boolean translateArguments) {
132    
133                    return UnicodeFormatter.toString(
134                            LanguageUtil.format(
135                                    locale, pattern, arguments, translateArguments));
136            }
137    
138            @Override
139            public String format(
140                    ResourceBundle resourceBundle, String pattern, Object argument) {
141    
142                    return UnicodeFormatter.toString(
143                            LanguageUtil.format(resourceBundle, pattern, argument));
144            }
145    
146            @Override
147            public String format(
148                    ResourceBundle resourceBundle, String pattern, Object argument,
149                    boolean translateArguments) {
150    
151                    return UnicodeFormatter.toString(
152                            LanguageUtil.format(
153                                    resourceBundle, pattern, argument, translateArguments));
154            }
155    
156            @Override
157            public String format(
158                    ResourceBundle resourceBundle, String pattern, Object[] arguments) {
159    
160                    return UnicodeFormatter.toString(
161                            LanguageUtil.format(resourceBundle, pattern, arguments));
162            }
163    
164            @Override
165            public String format(
166                    ResourceBundle resourceBundle, String pattern, Object[] arguments,
167                    boolean translateArguments) {
168    
169                    return UnicodeFormatter.toString(
170                            LanguageUtil.format(
171                                    resourceBundle, pattern, arguments, translateArguments));
172            }
173    
174            @Override
175            public String get(HttpServletRequest request, String key) {
176                    return UnicodeFormatter.toString(LanguageUtil.get(request, key));
177            }
178    
179            @Override
180            public String get(
181                    HttpServletRequest request, String key, String defaultValue) {
182    
183                    return UnicodeFormatter.toString(
184                            LanguageUtil.get(request, key, defaultValue));
185            }
186    
187            @Override
188            public String get(Locale locale, String key) {
189                    return UnicodeFormatter.toString(LanguageUtil.get(locale, key));
190            }
191    
192            @Override
193            public String get(Locale locale, String key, String defaultValue) {
194                    return UnicodeFormatter.toString(
195                            LanguageUtil.get(locale, key, defaultValue));
196            }
197    
198            @Override
199            public String get(ResourceBundle resourceBundle, String key) {
200                    return UnicodeFormatter.toString(LanguageUtil.get(resourceBundle, key));
201            }
202    
203            @Override
204            public String get(
205                    ResourceBundle resourceBundle, String key, String defaultValue) {
206    
207                    return UnicodeFormatter.toString(
208                            LanguageUtil.get(resourceBundle, key, defaultValue));
209            }
210    
211            @Override
212            public String getTimeDescription(
213                    HttpServletRequest request, long milliseconds) {
214    
215                    return UnicodeFormatter.toString(
216                            LanguageUtil.getTimeDescription(request, milliseconds));
217            }
218    
219            @Override
220            public String getTimeDescription(
221                    HttpServletRequest request, Long milliseconds) {
222    
223                    return UnicodeFormatter.toString(
224                            LanguageUtil.getTimeDescription(request, milliseconds));
225            }
226    
227    }