org.w3c.tidy
Class EncodingNameMapper

java.lang.Object
  extended byorg.w3c.tidy.EncodingNameMapper

public abstract class EncodingNameMapper
extends java.lang.Object

Maps between Java and IANA character encoding names. Also handles encoding alias used in tidy c.

Version:
$Revision: 1.2 $ ($Author: fgiust $)
Author:
Fabrizio Giustina
See Also:
http://www.iana.org/assignments/character-sets

Field Summary
private static java.util.Map encodingNameMap
          Map containing uppercase alias - {standard iana, standard java}.
 
Constructor Summary
EncodingNameMapper()
           
 
Method Summary
private static java.lang.String handlecommonAlias(java.lang.String encoding)
          "Fix" the name for common alias to reduce the number of entries needed in the hashmap.
static java.lang.String toIana(java.lang.String encoding)
          Convert a Java character encoding name to its IANA equivalent.
static java.lang.String toJava(java.lang.String encoding)
          Converts an encoding name to the standard java name.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

encodingNameMap

private static java.util.Map encodingNameMap
Map containing uppercase alias - {standard iana, standard java}.

Constructor Detail

EncodingNameMapper

public EncodingNameMapper()
Method Detail

toIana

public static java.lang.String toIana(java.lang.String encoding)
Convert a Java character encoding name to its IANA equivalent.

Parameters:
encoding - java encoding name or alias
Returns:
iana equivalent or null if no match is found.

handlecommonAlias

private static java.lang.String handlecommonAlias(java.lang.String encoding)
"Fix" the name for common alias to reduce the number of entries needed in the hashmap. It actually removes CSIBM, CCSID, IBM-, IBM0, CP-0, IBM, CP0, CP-, CP, WINDOWS- prefixes from given name.

Parameters:
encoding - encoding name
Returns:
"fixed" encoding.

toJava

public static java.lang.String toJava(java.lang.String encoding)
Converts an encoding name to the standard java name. Handles IANA names, legacy names used in tidy and different java encoding alias. See http://www.iana.org/assignments/character-sets.

Parameters:
encoding - IANA encoding name or alias
Returns:
java equivalent or null if no match is found.