gnu.inet.encoding

Class IDNA


public class IDNA
extends java.lang.Object

This class offers static methods for converting internationalized domain names to ACE and back. Note that this implementation only supports 16-bit Unicode code points.

Field Summary

static String
ACE_PREFIX

Method Summary

static String
toASCII(String input)
Converts a Unicode string to ASCII using the procedure in RFC3490 section 4.1.
static String
toASCII(String input, boolean allowUnassigned, boolean useSTD3ASCIIRules)
Converts a Unicode string to ASCII using the procedure in RFC3490 section 4.1.
static String
toUnicode(String input)
Converts an ASCII-encoded string to Unicode.
static String
toUnicode(String input, boolean allowUnassigned, boolean useSTD3ASCIIRules)
Converts an ASCII-encoded string to Unicode.

Field Details

ACE_PREFIX

public static final String ACE_PREFIX

Method Details

toASCII

public static String toASCII(String input)
            throws IDNAException
Converts a Unicode string to ASCII using the procedure in RFC3490 section 4.1. Unassigned characters are not allowed and STD3 ASCII rules are enforced. The input string may be a domain name containing dots.
Parameters:
input - Unicode string.
Returns:
Encoded string.

toASCII

public static String toASCII(String input,
                             boolean allowUnassigned,
                             boolean useSTD3ASCIIRules)
            throws IDNAException
Converts a Unicode string to ASCII using the procedure in RFC3490 section 4.1. Unassigned characters are not allowed and STD3 ASCII rules are enforced.
Parameters:
input - Unicode string.
allowUnassigned - Unassigned characters, allowed or not?
useSTD3ASCIIRules - STD3 ASCII rules, enforced or not?
Returns:
Encoded string.

toUnicode

public static String toUnicode(String input)
Converts an ASCII-encoded string to Unicode. Unassigned characters are not allowed and STD3 hostnames are enforced. Input may be domain name containing dots.
Parameters:
input - ASCII input string.
Returns:
Unicode string.

toUnicode

public static String toUnicode(String input,
                               boolean allowUnassigned,
                               boolean useSTD3ASCIIRules)
Converts an ASCII-encoded string to Unicode.
Parameters:
input - ASCII input string.
allowUnassigned - Allow unassigned Unicode characters.
useSTD3ASCIIRules - Check that the output conforms to STD3.
Returns:
Unicode string.