Package com.verisign.epp.codec.registry

## Class EPPRegistryIDN

- java.lang.Object
- - com.verisign.epp.codec.registry.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(EPPRegistryLanguageType)` to add one language policy to the existing list.
  See Also:
    `EPPRegistryDomain`, `EPPRegistryLanguageType`, Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | 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_NAME` | XML Element Name of `EPPRegistryIDN` root element.
    `static java.lang.String` | `ELM_UNICODE_VERSION` | XML Element Name of `unicodeVersion` attribute.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EPPRegistryIDN()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addLanguage​(EPPRegistryLanguageType language)` | Append one instance of `EPPRegistryLanguageType` 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()` | Get whether commingling of scripts is allowed.
    `java.lang.String` | `getEncoding()` | Get the character encoding.
    `java.lang.String` | `getIdnaVersion()` | Get the idnaVersion.
    `java.lang.String` | `getIdnVersion()` | Get the idnVersion.
    `java.util.List` | `getLanguages()` | Get the `List` of `EPPRegistryLanguageType`.
    `java.lang.String` | `getNamespace()` | Returns the XML namespace associated with the `EPPCodecComponent`.
    `java.lang.String` | `getUnicodeVersion()` | Get the unicodeVersion.
    `void` | `setCommingleAllowed​(java.lang.Boolean commingleAllowed)` | Set whether commingling of scripts is allowed.
    `void` | `setEncoding​(java.lang.String encoding)` | Set the character encoding.
    `void` | `setIdnaVersion​(java.lang.String idnaVersion)` | Set the idnaVersion.
    `void` | `setIdnVersion​(java.lang.String idnVersion)` | Set the idnVersion.
    `void` | `setLanguages​(java.util.List languages)` | Set the `List` of `EPPRegistryLanguageType`.
    `void` | `setUnicodeVersion​(java.lang.String unicodeVersion)` | Set 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_NAME

          public static final java.lang.String ELM_NAME

      XML Element Name of `EPPRegistryIDN` root element.
      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()

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

    - #### setIdnVersion

          public void setIdnVersion​(java.lang.String idnVersion)

      Set the idnVersion.
      Parameters:
        `idnVersion` - `String` representation of idnVersion

    - #### getUnicodeVersion

          public java.lang.String getUnicodeVersion()

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

    - #### setUnicodeVersion

          public void setUnicodeVersion​(java.lang.String unicodeVersion)

      Set the unicodeVersion.
      Parameters:
        `unicodeVersion` - `String` representation of unicodeVersion

    - #### getIdnaVersion

          public java.lang.String getIdnaVersion()

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

    - #### setIdnaVersion

          public void setIdnaVersion​(java.lang.String idnaVersion)

      Set the idnaVersion.
      Parameters:
        `idnaVersion` - `String` representation of idnaVersion

    - #### getEncoding

          public java.lang.String getEncoding()

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

    - #### setEncoding

          public void setEncoding​(java.lang.String encoding)

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

    - #### getCommingleAllowed

          public java.lang.Boolean getCommingleAllowed()

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

    - #### setCommingleAllowed

          public void setCommingleAllowed​(java.lang.Boolean commingleAllowed)

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

    - #### getLanguages

          public java.util.List getLanguages()

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

    - #### setLanguages

          public void setLanguages​(java.util.List languages)

      Set the `List` of `EPPRegistryLanguageType`.
      Parameters:
        `languages` - `List` of `EPPRegistryLanguageType` that defines the supported language codes and character code point policy

    - #### addLanguage

          public void addLanguage​(EPPRegistryLanguageType language)

      Append one instance of `EPPRegistryLanguageType` to the existing list.
      Parameters:
        `language` - instance of `EPPRegistryLanguageType` 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`.