aff13b9df15375c0bf94620d59242cfff5a627fb
[jalviewjs.git] / site / j2s / java / util / Locale.js
1 Clazz.declarePackage ("java.util");\r
2 Clazz.load (["java.util.HashMap"], "java.util.Locale", ["java.lang.InternalError", "$.NullPointerException", "$.StringBuilder"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.language = null;\r
5 this.country = null;\r
6 this.variant = null;\r
7 this.hashCodeValue = 0;\r
8 Clazz.instantialize (this, arguments);\r
9 }, java.util, "Locale", null, [Cloneable, java.io.Serializable]);\r
10 Clazz.makeConstructor (c$, \r
11 function (language, country, variant) {\r
12 this.language = language.intern ();\r
13 this.country = country.intern ();\r
14 this.variant = variant.intern ();\r
15 }, "~S,~S,~S");\r
16 Clazz.makeConstructor (c$, \r
17 function (language, country) {\r
18 this.construct (language, country, "");\r
19 }, "~S,~S");\r
20 Clazz.makeConstructor (c$, \r
21 function (language) {\r
22 this.construct (language, "", "");\r
23 }, "~S");\r
24 Clazz.makeConstructor (c$, \r
25  function (language, country, flag) {\r
26 this.language = language;\r
27 this.country = country;\r
28 this.variant = "";\r
29 }, "~S,~S,~B");\r
30 c$.createSingleton = Clazz.defineMethod (c$, "createSingleton", \r
31  function (key, language, country) {\r
32 var locale =  new java.util.Locale (language, country, false);\r
33 java.util.Locale.cache.put (key, locale);\r
34 return locale;\r
35 }, "~S,~S,~S");\r
36 c$.getInstance = Clazz.defineMethod (c$, "getInstance", \r
37 function (language, country, variant) {\r
38 if (language == null || country == null || variant == null) {\r
39 throw  new NullPointerException ();\r
40 }var sb =  new StringBuilder ();\r
41 sb.append (language).append ('_').append (country).append ('_').append (variant);\r
42 var key = sb.toString ();\r
43 var locale = java.util.Locale.cache.get (key);\r
44 if (locale == null) {\r
45 locale =  new java.util.Locale (language, country, variant);\r
46 var l = java.util.Locale.cache.put (key, locale);\r
47 if (l != null) {\r
48 locale = l;\r
49 }}return locale;\r
50 }, "~S,~S,~S");\r
51 c$.getDefault = Clazz.defineMethod (c$, "getDefault", \r
52 function () {\r
53 if (java.util.Locale.defaultLocale == null) {\r
54 var language;\r
55 var country;\r
56 var variant;\r
57 language = "en";\r
58 country = "";\r
59 variant = "";\r
60 java.util.Locale.defaultLocale = java.util.Locale.getInstance (language, country, variant);\r
61 }return java.util.Locale.defaultLocale;\r
62 });\r
63 c$.setDefault = Clazz.defineMethod (c$, "setDefault", \r
64 function (newLocale) {\r
65 if (newLocale == null) throw  new NullPointerException ("Can't set default locale to NULL");\r
66 java.util.Locale.defaultLocale = newLocale;\r
67 }, "java.util.Locale");\r
68 Clazz.defineMethod (c$, "getLanguage", \r
69 function () {\r
70 return this.language;\r
71 });\r
72 Clazz.defineMethod (c$, "getCountry", \r
73 function () {\r
74 return this.country;\r
75 });\r
76 Clazz.defineMethod (c$, "getVariant", \r
77 function () {\r
78 return this.variant;\r
79 });\r
80 Clazz.overrideMethod (c$, "toString", \r
81 function () {\r
82 var l = this.language.length != 0;\r
83 var c = this.country.length != 0;\r
84 var v = this.variant.length != 0;\r
85 var result =  new StringBuilder (this.language);\r
86 if (c || (l && v)) {\r
87 result.append ('_').append (this.country);\r
88 }if (v && (l || c)) {\r
89 result.append ('_').append (this.variant);\r
90 }return result.toString ();\r
91 });\r
92 Clazz.defineMethod (c$, "getDisplayLanguage", \r
93 function () {\r
94 return this.getDisplayLanguage (java.util.Locale.getDefault ());\r
95 });\r
96 Clazz.defineMethod (c$, "getDisplayLanguage", \r
97 function (inLocale) {\r
98 return this.getDisplayString (this.language, inLocale, 0);\r
99 }, "java.util.Locale");\r
100 Clazz.defineMethod (c$, "getDisplayCountry", \r
101 function () {\r
102 return this.getDisplayCountry (java.util.Locale.getDefault ());\r
103 });\r
104 Clazz.defineMethod (c$, "getDisplayCountry", \r
105 function (inLocale) {\r
106 return this.getDisplayString (this.country, inLocale, 1);\r
107 }, "java.util.Locale");\r
108 Clazz.defineMethod (c$, "getDisplayString", \r
109  function (code, inLocale, type) {\r
110 if (code.length == 0) {\r
111 return "";\r
112 }if (inLocale == null) {\r
113 throw  new NullPointerException ();\r
114 }return inLocale.toString ();\r
115 }, "~S,java.util.Locale,~N");\r
116 Clazz.defineMethod (c$, "getDisplayVariant", \r
117 function () {\r
118 return this.getDisplayVariant (java.util.Locale.getDefault ());\r
119 });\r
120 Clazz.defineMethod (c$, "getDisplayVariant", \r
121 function (inLocale) {\r
122 if (this.variant.length == 0) return "";\r
123 return this.variant;\r
124 }, "java.util.Locale");\r
125 Clazz.defineMethod (c$, "getDisplayName", \r
126 function () {\r
127 return this.getDisplayName (java.util.Locale.getDefault ());\r
128 });\r
129 Clazz.defineMethod (c$, "getDisplayName", \r
130 function (inLocale) {\r
131 return inLocale.toString ();\r
132 }, "java.util.Locale");\r
133 Clazz.defineMethod (c$, "clone", \r
134 function () {\r
135 try {\r
136 var that = Clazz.superCall (this, java.util.Locale, "clone", []);\r
137 return that;\r
138 } catch (e) {\r
139 if (Clazz.exceptionOf (e, CloneNotSupportedException)) {\r
140 throw  new InternalError ();\r
141 } else {\r
142 throw e;\r
143 }\r
144 }\r
145 });\r
146 Clazz.overrideMethod (c$, "hashCode", \r
147 function () {\r
148 var hc = this.hashCodeValue;\r
149 if (hc == 0) {\r
150 hc = (this.language.hashCode () << 8) ^ this.country.hashCode () ^ (this.variant.hashCode () << 4);\r
151 this.hashCodeValue = hc;\r
152 }return hc;\r
153 });\r
154 Clazz.overrideMethod (c$, "equals", \r
155 function (obj) {\r
156 if (this === obj) return true;\r
157 if (!(Clazz.instanceOf (obj, java.util.Locale))) return false;\r
158 var other = obj;\r
159 return this.language === other.language && this.country === other.country && this.variant === other.variant;\r
160 }, "~O");\r
161 c$.cache = c$.prototype.cache =  new java.util.HashMap (32);\r
162 c$.ENGLISH = c$.prototype.ENGLISH = java.util.Locale.createSingleton ("en__", "en", "");\r
163 c$.ROOT = c$.prototype.ROOT = java.util.Locale.createSingleton ("__", "", "");\r
164 Clazz.defineStatics (c$,\r
165 "DISPLAY_LANGUAGE", 0,\r
166 "DISPLAY_COUNTRY", 1,\r
167 "defaultLocale", null);\r
168 });\r