com.verisign.epp.codec.registry.v01

## Class EPPRegistryIDN

- java.lang.Object
- - com.verisign.epp.codec.registry.v01.EPPRegistryIDN

- All Implemented Interfaces:
    EPPCodecComponent, java.io.Serializable, java.lang.Cloneable

      public class EPPRegistryIDN
      extends java.lang.Object
      implements EPPCodecComponent

  Represents the Internationalized Domain Name (IDN) policy information. The <registry:idn> must contain the following child elements:
  - <registry:idnVersion> - The OPTIONAL server unique version of the IDN language rules. Use `getIdnVersion()` and `setIdnVersion(String)` to get and set the element.
  - <registry:idnaVersion> - An Internationalizing Domain Names in Applications (IDNA) version supported by the server. IDNA represents a collection of documents that describe the protocol and usage for Internationalized Domain for Applications like IDNA 2003, with value of 2003, or IDNA 2008, with value of 2008. Use `getIdnaVersion()` and `setIdnaVersion(String)` to get and set the element.
  - <registry:unicodeVersion> - The Unicode version supported by the server like the value of "6.0" for Unicode 6.0. Use `getUnicodeVersion()` and `setUnicodeVersion(String)` to get and set the element.
  - <registry:encoding> - The OPTIONAL encoding for transforming Unicode characters uniquely and reversibly into DNS compatible characters with a default value of "Punycode". Use `getEncoding()` and `setEncoding(String)` to get and set the element.
  - <registry:commingleAllowed> - An OPTIONAL boolean value that indicates whether commingling of scripts is allowed with a default value of "false". Use `getCommingleAllowed()` and `setCommingleAllowed(Boolean)` to get and set the element.
  - <registry:language> - Zero or more <registry:language> elements that defines the supported language codes and character code point policy. Use `getLanguages()` and `setLanguages(List)` to get and set the element. Use `addLanguage(EPPRegistryLanguage)` to add one language policy to the existing list.
  See Also:
    `EPPRegistryDomain`, `EPPRegistryLanguage`, Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `ELM_COMMINGLE_ALLOWED` XML Element Name of `commingleAllowed` attribute.
    `static java.lang.String` | `ELM_ENCODING` XML Element Name of `encoding` attribute.
    `static java.lang.String` | `ELM_IDN_VERSION` XML Element Name of `idnVersion` attribute.
    `static java.lang.String` | `ELM_IDNA_VERSION` XML Element Name of `idnaVersion` attribute.
    `static java.lang.String` | `ELM_LOCALNAME` Constant for the `EPPRegistryIDN` local name
    `static java.lang.String` | `ELM_NAME` Constant for the `EPPRegistryIDN` (prefix and local name)
    `static java.lang.String` | `ELM_UNICODE_VERSION` XML Element Name of `unicodeVersion` attribute.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPRegistryIDN()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addLanguage(EPPRegistryLanguage language)` Append one instance of `EPPRegistryLanguage` to the existing list.
    `java.lang.Object` | `clone()` Clone `EPPRegistryIDN`.
    `void` | `decode(org.w3c.dom.Element aElement)` Decode the `EPPRegistryIDN` attributes from the aElement DOM Element tree.
    `org.w3c.dom.Element` | `encode(org.w3c.dom.Document aDocument)` Encode a DOM Element tree from the attributes of the `EPPRegistryIDN` instance.
    `boolean` | `equals(java.lang.Object aObject)` implements a deep `EPPRegistryIDN` compare.
    `java.lang.Boolean` | `getCommingleAllowed()` Gets whether commingling of scripts is allowed.
    `java.lang.String` | `getEncoding()` Gets the character encoding.
    `java.lang.String` | `getIdnaVersion()` Gets the idnaVersion.
    `java.lang.String` | `getIdnVersion()` Gets the idnVersion.
    `java.util.List<EPPRegistryLanguage>` | `getLanguages()` Gets the `List` of `EPPRegistryLanguage`.
    `java.lang.String` | `getNamespace()` Returns the XML namespace associated with the `EPPCodecComponent`.
    `java.lang.String` | `getUnicodeVersion()` Gets the unicodeVersion.
    `void` | `setCommingleAllowed(java.lang.Boolean aCommingleAllowed)` Sets whether commingling of scripts is allowed.
    `void` | `setEncoding(java.lang.String aEncoding)` Sets the character encoding.
    `void` | `setIdnaVersion(java.lang.String aIdnaVersion)` Sets the idnaVersion.
    `void` | `setIdnVersion(java.lang.String aIdnVersion)` Sets the idnVersion.
    `void` | `setLanguages(java.util.List<EPPRegistryLanguage> aLanguages)` Sets the `List` of `EPPRegistryLanguage`.
    `void` | `setUnicodeVersion(java.lang.String aUnicodeVersion)` Sets the unicodeVersion.
    `java.lang.String` | `toString()` Implementation of `Object.toString`, which will result in an indented XML `String` representation of the concrete `EPPCodecComponent`.

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### ELM_LOCALNAME

          public static final java.lang.String ELM_LOCALNAME

      Constant for the `EPPRegistryIDN` local name
      See Also:
        Constant Field Values

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

      Constant for the `EPPRegistryIDN` (prefix and local name)
      See Also:
        Constant Field Values

    - #### ELM_IDN_VERSION

          public static final java.lang.String ELM_IDN_VERSION

      XML Element Name of `idnVersion` attribute.
      See Also:
        Constant Field Values

    - #### ELM_IDNA_VERSION

          public static final java.lang.String ELM_IDNA_VERSION

      XML Element Name of `idnaVersion` attribute.
      See Also:
        Constant Field Values

    - #### ELM_UNICODE_VERSION

          public static final java.lang.String ELM_UNICODE_VERSION

      XML Element Name of `unicodeVersion` attribute.
      See Also:
        Constant Field Values

    - #### ELM_ENCODING

          public static final java.lang.String ELM_ENCODING

      XML Element Name of `encoding` attribute.
      See Also:
        Constant Field Values

    - #### ELM_COMMINGLE_ALLOWED

          public static final java.lang.String ELM_COMMINGLE_ALLOWED

      XML Element Name of `commingleAllowed` attribute.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EPPRegistryIDN

          public EPPRegistryIDN()

  - ### Method Detail

    - #### encode

          public org.w3c.dom.Element encode(org.w3c.dom.Document aDocument)
                                     throws EPPEncodeException

      Encode a DOM Element tree from the attributes of the `EPPRegistryIDN` instance.
      Specified by:
        `encode` in interface `EPPCodecComponent`
      Parameters:
        `aDocument` - DOM Document that is being built. Used as an Element factory.
      Returns:
        Element Root DOM Element representing the `EPPRegistryIDN` instance.
      Throws:
        `EPPEncodeException` - - Unable to encode `EPPRegistryIDN` instance.

    - #### decode

          public void decode(org.w3c.dom.Element aElement)
                      throws EPPDecodeException

      Decode the `EPPRegistryIDN` attributes from the aElement DOM Element tree.
      Specified by:
        `decode` in interface `EPPCodecComponent`
      Parameters:
        `aElement` - Root DOM Element to decode `EPPRegistryIDN` from.
      Throws:
        `EPPDecodeException` - Unable to decode aElement

    - #### clone

          public java.lang.Object clone()
                                 throws java.lang.CloneNotSupportedException

      Clone `EPPRegistryIDN`.
      Specified by:
        `clone` in interface `EPPCodecComponent`
      Overrides:
        `clone` in class `java.lang.Object`
      Returns:
        clone of `EPPRegistryIDN`
      Throws:
        `java.lang.CloneNotSupportedException` - standard Object.clone exception

    - #### equals

          public boolean equals(java.lang.Object aObject)

      implements a deep `EPPRegistryIDN` compare.
      Overrides:
        `equals` in class `java.lang.Object`
      Parameters:
        `aObject` - `EPPRegistryIDN` instance to compare with
      Returns:
        `true` if this object is the same as the aObject argument; `false` otherwise

    - #### toString

          public java.lang.String toString()

      Implementation of `Object.toString`, which will result in an indented XML `String` representation of the concrete `EPPCodecComponent`.
      Overrides:
        `toString` in class `java.lang.Object`
      Returns:
        Indented XML `String` if successful; `ERROR` otherwise.

    - #### getIdnVersion

          public java.lang.String getIdnVersion()

      Gets the idnVersion.
      Returns:
        `String` representation of idnVersion

    - #### setIdnVersion

          public void setIdnVersion(java.lang.String aIdnVersion)

      Sets the idnVersion.
      Parameters:
        `aIdnVersion` - `String` representation of idnVersion

    - #### getUnicodeVersion

          public java.lang.String getUnicodeVersion()

      Gets the unicodeVersion.
      Returns:
        `String` representation of unicodeVersion

    - #### setUnicodeVersion

          public void setUnicodeVersion(java.lang.String aUnicodeVersion)

      Sets the unicodeVersion.
      Parameters:
        `aUnicodeVersion` - `String` representation of unicodeVersion

    - #### getIdnaVersion

          public java.lang.String getIdnaVersion()

      Gets the idnaVersion.
      Returns:
        `String` representation of idnaVersion

    - #### setIdnaVersion

          public void setIdnaVersion(java.lang.String aIdnaVersion)

      Sets the idnaVersion.
      Parameters:
        `aIdnaVersion` - `String` representation of idnaVersion

    - #### getEncoding

          public java.lang.String getEncoding()

      Gets the character encoding.
      Returns:
        character encoding for transforming Unicode characters uniquely and reversibly into DNS compatible characters

    - #### setEncoding

          public void setEncoding(java.lang.String aEncoding)

      Sets the character encoding.
      Parameters:
        `aEncoding` - character encoding for transforming Unicode characters uniquely and reversibly into DNS compatible characters

    - #### getCommingleAllowed

          public java.lang.Boolean getCommingleAllowed()

      Gets whether commingling of scripts is allowed.
      Returns:
        `true` allow commingling; `false` do not allow commingling

    - #### setCommingleAllowed

          public void setCommingleAllowed(java.lang.Boolean aCommingleAllowed)

      Sets whether commingling of scripts is allowed.
      Parameters:
        `aCommingleAllowed` - `true` allow commingling; `false` do not allow commingling

    - #### getLanguages

          public java.util.List<EPPRegistryLanguage> getLanguages()

      Gets the `List` of `EPPRegistryLanguage`.
      Returns:
        `List` of `EPPRegistryLanguage` that defines the supported language codes and character code point policy

    - #### setLanguages

          public void setLanguages(java.util.List<EPPRegistryLanguage> aLanguages)

      Sets the `List` of `EPPRegistryLanguage`.
      Parameters:
        `aLanguages` - `List` of `EPPRegistryLanguage` that defines the supported language codes and character code point policy

    - #### addLanguage

          public void addLanguage(EPPRegistryLanguage language)

      Append one instance of `EPPRegistryLanguage` to the existing list.
      Parameters:
        `language` - instance of `EPPRegistryLanguage` that defines the supported language codes and character code point policy

    - #### getNamespace

          public java.lang.String getNamespace()

      Returns the XML namespace associated with the `EPPCodecComponent`.
      Specified by:
        `getNamespace` in interface `EPPCodecComponent`
      Returns:
        XML namespace for the `EPPCodecComponent`.