KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > jaspersoft > jasperserver > api > common > util > LocaleHelper


1 /*
2  * Copyright (C) 2006 JasperSoft http://www.jaspersoft.com
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed WITHOUT ANY WARRANTY; and without the
10  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11  * See the GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
15  * or write to:
16  *
17  * Free Software Foundation, Inc.,
18  * 59 Temple Place - Suite 330,
19  * Boston, MA USA 02111-1307
20  */

21 package com.jaspersoft.jasperserver.api.common.util;
22
23 import java.util.Locale JavaDoc;
24
25 /**
26  * @author Lucian Chirita (lucianc@users.sourceforge.net)
27  * @version $Id: LocaleHelper.java 3753 2006-06-19 18:30:31Z lucian $
28  */

29 public class LocaleHelper {
30     
31     private static final LocaleHelper instance = new LocaleHelper();
32     
33     protected LocaleHelper() {
34     }
35     
36     public static LocaleHelper getInstance() {
37         return instance;
38     }
39     
40     public String JavaDoc getCode(Locale JavaDoc locale) {
41         return locale.toString();
42     }
43     
44     public Locale JavaDoc getLocale(String JavaDoc code) {
45         String JavaDoc language;
46         String JavaDoc country;
47         String JavaDoc variant;
48         
49         int firstSep = code.indexOf('_');
50         if (firstSep < 0) {
51             language = code;
52             country = variant = "";
53         } else {
54             language = code.substring(0, firstSep);
55             
56             int secondSep = code.indexOf('_', firstSep + 1);
57             if (secondSep < 0) {
58                 country = code.substring(firstSep + 1);
59                 variant = "";
60             } else {
61                 country = code.substring(firstSep + 1, secondSep);
62                 variant = code.substring(secondSep + 1);
63             }
64         }
65         
66         return new Locale JavaDoc(language, country, variant);
67     }
68 }
69
Popular Tags