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