com.verisign.epp.codec.idnmap

## Class EPPIdnMap

- java.lang.Object
- - com.verisign.epp.codec.idnmap.EPPIdnMap

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

      public class EPPIdnMap
      extends java.lang.Object
      implements EPPCodecComponent

  `EPPIdnMap` is used in the extension to the domain create command to define the IDN table and optionally the Unicode NFC of the domain name, and in the extension to the domain info response to return the same information about the domain name.
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `ELM_LOCALNAME` XML local name for `EPPIdnMap`.
    `static java.lang.String` | `ELM_NAME` XML root tag for `EPPIdnMap`.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPIdnMap()` Default constructor for `EPPIdnMap`.
    `EPPIdnMap(java.lang.String aTable)` Constructor for `EPPIdnMap` that takes the IDN table identifier.
    `EPPIdnMap(java.lang.String aTable, java.lang.String aUname)` Constructor for `EPPIdnMap` that takes both the IDN table identifier and the domain name uname in Unicode NFC.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()` clone an `EPPCodecComponent`.
    `void` | `decode(org.w3c.dom.Element aElement)` decode a DOM element tree to initialize the instance attributes.
    `org.w3c.dom.Element` | `encode(org.w3c.dom.Document aDocument)` encode instance into a DOM element tree.
    `boolean` | `equals(java.lang.Object aObject)` Compare an instance of `EPPIdnMap` with this instance.
    `java.lang.String` | `getNamespace()` Returns the XML namespace associated with the `EPPCodecComponent`.
    `java.lang.String` | `getTable()` Gets the IDN table identifier.
    `java.lang.String` | `getUname()` Gets the uname value, which is the domain name in Unicode NFC.
    `boolean` | `hasUname()` Is the uname defined?
    `void` | `setTable(java.lang.String aTable)` Sets the IDN table identifier.
    `void` | `setUname(java.lang.String aUname)` Sets the uname value.
    `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

      XML local name for `EPPIdnMap`.
      See Also:
        Constant Field Values

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

      XML root tag for `EPPIdnMap`.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EPPIdnMap

          public EPPIdnMap()

      Default constructor for `EPPIdnMap`.

    - #### EPPIdnMap

          public EPPIdnMap(java.lang.String aTable)

      Constructor for `EPPIdnMap` that takes the IDN table identifier.
      Parameters:
        `aTable` - IDN table identifier as provided by the server

    - #### EPPIdnMap

          public EPPIdnMap(java.lang.String aTable,
                           java.lang.String aUname)

      Constructor for `EPPIdnMap` that takes both the IDN table identifier and the domain name uname in Unicode NFC.
      Parameters:
        `aTable` - IDN table identifier as provided by the server
        `aUname` - Domain name in Unicode NFC

  - ### Method Detail

    - #### getTable

          public java.lang.String getTable()

      Gets the IDN table identifier.
      Returns:
        The IDN table identifier as provided by the server.

    - #### setTable

          public void setTable(java.lang.String aTable)

      Sets the IDN table identifier.
      Parameters:
        `aTable` - The IDN table identifier as provided by the server.

    - #### hasUname

          public boolean hasUname()

      Is the uname defined?
      Returns:
        `true` if the uname is defined; `false` otherwise.

    - #### getUname

          public java.lang.String getUname()

      Gets the uname value, which is the domain name in Unicode NFC.
      Returns:
        Domain uname value if defined; `null` otherwise.

    - #### setUname

          public void setUname(java.lang.String aUname)

      Sets the uname value.
      Parameters:
        `aUname` - Domain name in Unicode NFC

    - #### encode

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

      encode instance into a DOM element tree. A DOM Document is passed as an argument and functions as a factory for DOM objects. The root element associated with the instance is created and each instance attribute is appended as a child node.
      Specified by:
        `encode` in interface `EPPCodecComponent`
      Parameters:
        `aDocument` - DOM Document, which acts is an Element factory
      Returns:
        Element Root element associated with the object
      Throws:
        `EPPEncodeException` - Error encoding `EPPIdnMap`

    - #### decode

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

      decode a DOM element tree to initialize the instance attributes. The `aElement` argument represents the root DOM element and is used to traverse the DOM nodes for instance attribute values.
      Specified by:
        `decode` in interface `EPPCodecComponent`
      Parameters:
        `aElement` - `Element` to decode
      Throws:
        `EPPDecodeException` - Error decoding `Element`

    - #### clone

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

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

    - #### 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.

    - #### equals

          public boolean equals(java.lang.Object aObject)

      Compare an instance of `EPPIdnMap` with this instance.
      Overrides:
        `equals` in class `java.lang.Object`
      Parameters:
        `aObject` - Object to compare with.
      Returns:
        `true` if equal; `false` otherwise.

    - #### 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`.