1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17   * SOFTWARE.
18   */
19  
20  package com.liferay.portal.kernel.language;
21  
22  import java.util.Locale;
23  
24  import javax.portlet.PortletRequest;
25  
26  import javax.servlet.http.HttpServletRequest;
27  import javax.servlet.http.HttpServletResponse;
28  import javax.servlet.jsp.PageContext;
29  
30  /**
31   * <a href="LanguageUtil.java.html"><b><i>View Source</i></b></a>
32   *
33   * @author Brian Wing Shun Chan
34   *
35   */
36  public class LanguageUtil {
37  
38      public static String format(
39          Locale locale, String pattern, Object argument) {
40  
41          return getLanguage().format(locale, pattern, argument);
42      }
43  
44      public static String format(
45          Locale locale, String pattern, Object argument,
46          boolean translateArguments) {
47  
48          return getLanguage().format(
49              locale, pattern, argument, translateArguments);
50      }
51  
52      public static String format(
53          Locale locale, String pattern, Object[] arguments) {
54  
55          return getLanguage().format(locale, pattern, arguments);
56      }
57  
58      public static String format(
59          long companyId, Locale locale, String pattern, Object argument) {
60  
61          return getLanguage().format(companyId, locale, pattern, argument);
62      }
63  
64      public static String format(
65          long companyId, Locale locale, String pattern, Object argument,
66          boolean translateArguments) {
67  
68          return getLanguage().format(
69              companyId, locale, pattern, argument, translateArguments);
70      }
71  
72      public static String format(
73          long companyId, Locale locale, String pattern, Object[] arguments) {
74  
75          return getLanguage().format(companyId, locale, pattern, arguments);
76      }
77  
78      public static String format(
79          long companyId, Locale locale, String pattern, Object[] arguments,
80          boolean translateArguments) {
81  
82          return getLanguage().format(
83              companyId, locale, pattern, arguments, translateArguments);
84      }
85  
86      public static String format(
87          PageContext pageContext, String pattern, Object argument) {
88  
89          return getLanguage().format(pageContext, pattern, argument);
90      }
91  
92      public static String format(
93          PageContext pageContext, String pattern, Object argument,
94          boolean translateArguments) {
95  
96          return getLanguage().format(
97              pageContext, pattern, argument, translateArguments);
98      }
99  
100     public static String format(
101         PageContext pageContext, String pattern, Object[] arguments) {
102 
103         return getLanguage().format(pageContext, pattern, arguments);
104     }
105 
106     public static String format(
107         PageContext pageContext, String pattern, Object[] arguments,
108         boolean translateArguments) {
109 
110         return getLanguage().format(
111             pageContext, pattern, arguments, translateArguments);
112     }
113 
114     public static String format(
115         PageContext pageContext, String pattern, LanguageWrapper argument) {
116 
117         return getLanguage().format(pageContext, pattern, argument);
118     }
119 
120     public static String format(
121         PageContext pageContext, String pattern, LanguageWrapper argument,
122         boolean translateArguments) {
123 
124         return getLanguage().format(
125             pageContext, pattern, argument, translateArguments);
126     }
127 
128     public static String format(
129         PageContext pageContext, String pattern, LanguageWrapper[] arguments) {
130 
131         return getLanguage().format(pageContext, pattern, arguments);
132     }
133 
134     public static String format(
135         PageContext pageContext, String pattern, LanguageWrapper[] arguments,
136         boolean translateArguments) {
137 
138         return getLanguage().format(
139             pageContext, pattern, arguments, translateArguments);
140     }
141 
142     public static void init() {
143         getLanguage().init();
144     }
145 
146     public static String get(Locale locale, String key) {
147         return getLanguage().get(locale, key);
148     }
149 
150     public static String get(long companyId, Locale locale, String key) {
151         return getLanguage().get(companyId, locale, key);
152     }
153 
154     public static String get(
155         long companyId, Locale locale, String key, String defaultValue) {
156 
157         return getLanguage().get(companyId, locale, key, defaultValue);
158     }
159 
160     public static String get(PageContext pageContext, String key) {
161         return getLanguage().get(pageContext, key);
162     }
163 
164     public static String get(
165         PageContext pageContext, String key, String defaultValue) {
166 
167         return getLanguage().get(pageContext, key, defaultValue);
168     }
169 
170     public static Locale[] getAvailableLocales() {
171         return getLanguage().getAvailableLocales();
172     }
173 
174     public static String getCharset(Locale locale) {
175         return getLanguage().getCharset(locale);
176     }
177 
178     public static Language getLanguage() {
179         return _language;
180     }
181 
182     public static String getLanguageId(PortletRequest portletRequest) {
183         return getLanguage().getLanguageId(portletRequest);
184     }
185 
186     public static String getLanguageId(HttpServletRequest request) {
187         return getLanguage().getLanguageId(request);
188     }
189 
190     public static String getLanguageId(Locale locale) {
191         return getLanguage().getLanguageId(locale);
192     }
193 
194     public static Locale getLocale(String languageCode) {
195         return getLanguage().getLocale(languageCode);
196     }
197 
198     public static String getTimeDescription(
199         PageContext pageContext, Long milliseconds) {
200 
201         return getLanguage().getTimeDescription(pageContext, milliseconds);
202     }
203 
204     public static String getTimeDescription(
205         PageContext pageContext, long milliseconds) {
206 
207         return getLanguage().getTimeDescription(pageContext, milliseconds);
208     }
209 
210     public static boolean isAvailableLocale(Locale locale) {
211         return getLanguage().isAvailableLocale(locale);
212     }
213 
214     public static void resetAvailableLocales(long companyId) {
215         getLanguage().resetAvailableLocales(companyId);
216     }
217 
218     public static void updateCookie(
219         HttpServletRequest request, HttpServletResponse response,
220         Locale locale) {
221 
222         getLanguage().updateCookie(request, response, locale);
223     }
224 
225     public void setLanguage(Language language) {
226         _language = language;
227     }
228 
229     private static Language _language;
230 
231 }