@@ -63,6 +63,8 @@ public class Encoding {
6363 "xjisautodetect" , "xutf16bebom" , "xutf16lebom" , "xutf32bebom" ,
6464 "xutf32lebom" , "xutf16oppositeendian" , "xutf16platformendian" ,
6565 "xutf32oppositeendian" , "xutf32platformendian" };
66+ private static Map <String , Encoding > encodingByLabel =
67+ new HashMap <String , Encoding >();
6668
6769 private static String [] NOT_OBSCURE = { "big5" , "big5hkscs" , "eucjp" ,
6870 "euckr" , "gb18030" , "gbk" , "iso2022jp" , "iso2022kr" , "iso88591" ,
@@ -73,8 +75,6 @@ public class Encoding {
7375 "windows1253" , "windows1254" , "windows1255" , "windows1256" ,
7476 "windows1257" , "windows1258" };
7577
76- private static Map <String , Encoding > encodingByCookedName = new HashMap <String , Encoding >();
77-
7878 private final String canonName ;
7979
8080 private final Charset charset ;
@@ -115,14 +115,14 @@ asciiSuperset, isObscure(name), isShouldNot(name),
115115 encodings .add (enc );
116116 Set <String > aliases = cs .aliases ();
117117 for (String alias : aliases ) {
118- encodingByCookedName .put (toNameKey (alias ).intern (), enc );
118+ encodingByLabel .put (toNameKey (alias ).intern (), enc );
119119 }
120120 }
121121 }
122122 // Overwrite possible overlapping aliases with the real things--just in
123123 // case
124124 for (Encoding encoding : encodings ) {
125- encodingByCookedName .put (toNameKey (encoding .getCanonName ()),
125+ encodingByLabel .put (toNameKey (encoding .getCanonName ()),
126126 encoding );
127127 }
128128 UTF8 = forName ("utf-8" );
@@ -159,15 +159,15 @@ asciiSuperset, isObscure(name), isShouldNot(name),
159159 } catch (UnsupportedCharsetException e ) {
160160 }
161161 try {
162- encodingByCookedName .put ("x-x-big5" , forName ("big5" ));
162+ encodingByLabel .put ("x-x-big5" , forName ("big5" ));
163163 } catch (UnsupportedCharsetException e ) {
164164 }
165165 try {
166- encodingByCookedName .put ("euc-kr" , forName ("windows-949" ));
166+ encodingByLabel .put ("euc-kr" , forName ("windows-949" ));
167167 } catch (UnsupportedCharsetException e ) {
168168 }
169169 try {
170- encodingByCookedName .put ("ks_c_5601-1987" , forName ("windows-949" ));
170+ encodingByLabel .put ("ks_c_5601-1987" , forName ("windows-949" ));
171171 } catch (UnsupportedCharsetException e ) {
172172 }
173173 }
@@ -235,7 +235,7 @@ private static boolean isLikelyEbcdic(String canonName,
235235 }
236236
237237 public static Encoding forName (String name ) {
238- Encoding rv = encodingByCookedName .get (toNameKey (name ));
238+ Encoding rv = encodingByLabel .get (toNameKey (name ));
239239 if (rv == null ) {
240240 throw new UnsupportedCharsetException (name );
241241 } else {
@@ -381,7 +381,7 @@ public Encoding getActualHtmlEncoding() {
381381 }
382382
383383 public static void main (String [] args ) {
384- for (Map .Entry <String , Encoding > entry : encodingByCookedName .entrySet ()) {
384+ for (Map .Entry <String , Encoding > entry : encodingByLabel .entrySet ()) {
385385 String name = entry .getKey ();
386386 Encoding enc = entry .getValue ();
387387 System .out .printf (
0 commit comments