com.verisign.epp.codec.idntable

## Class EPPIdnTableCheckDomain

- java.lang.Object
- - com.verisign.epp.codec.idntable.EPPIdnTableCheckDomain

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

      public class EPPIdnTableCheckDomain
      extends java.lang.Object
      implements EPPCodecComponent

  `EPPIdnTableCheckDomain` is used to represent the Internationalized Domain Name (IDN) information for a domain in a IDN table response to a <check> command. The domain information includes whether the domain is a valid IDN domain name, whether or not the use of the IDN mapping extension is needed, and the matching list of valid IDN table identifiers.
  See Also:
    Serialized Form

- - ### Field Summary

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

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPIdnTableCheckDomain()` Default constructor for `EPPIdnTableCheckDomain`.
    `EPPIdnTableCheckDomain(java.lang.String aName, boolean aValid)` Constructor for `EPPIdnTableCheckDomain` that takes the domain name and whether the domain name is a valid IDN domain name.
    `EPPIdnTableCheckDomain(java.lang.String aName, boolean aValid, boolean aIdnmap)` Constructor for `EPPIdnTableCheckDomain` that takes the domain name and whether the domain name is a valid IDN domain name, and whether the domain name requires the IDN mapping extension with a domain create of the domain name.
    `EPPIdnTableCheckDomain(java.lang.String aDomain, java.util.List<java.lang.String> aTables)` Constructor for `EPPIdnTableCheckDomain` that is used for valid IDN domain names by providing the list of IDN table identifiers.
    `EPPIdnTableCheckDomain(java.lang.String aDomain, java.lang.String aReason)` Constructor for `EPPIdnTableCheckDomain` that is used for invalid IDN domain names by providing the reason the domain name is not valid.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addTable(java.lang.String aTable)` Append a table identifier to the list of table identifiers.
    `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 `EPPIdnTableCheckDomain` with this instance.
    `java.lang.String` | `getName()` Returns the domain name.
    `java.lang.String` | `getNamespace()` Returns the XML namespace associated with the `EPPCodecComponent`.
    `java.lang.String` | `getReason()` Gets the reason that the domain name is invalid.
    `java.lang.String` | `getReasonLang()` Gets the reason language value.
    `java.util.List<java.lang.String>` | `getTables()` Get the list of table identifiers.
    `boolean` | `hasReason()` Is the reason defined?
    `boolean` | `hasReasonLang()` Is the reason language defined?
    `boolean` | `hasTables()` Are any table identifiers defined in the list of table identifiers?
    `boolean` | `isIdnmap()` Is the IDN mapping extension required on a domain create of the domain name?
    `boolean` | `isValid()` Is the domain name a valid IDN domain name?
    `void` | `setIdnmap(boolean aIdnmap)` Set whether the IDN mapping extension is required on a domain create of the domain name.
    `void` | `setName(java.lang.String aDomain)` Sets the domain name.
    `void` | `setReason(java.lang.String aReason)` Sets the reason that the domain name is invalid.
    `void` | `setReasonLang(java.lang.String aReasonLang)` Sets the reason language value.
    `void` | `setTable(java.lang.String aTable)` Set an individual table identifier.
    `void` | `setTables(java.util.List<java.lang.String> aTables)` Set the list of table identifiers.
    `void` | `setValid(boolean aValid)` Sets whether the domain name is a valid IDN domain name.
    `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 `EPPIdnTableCheckDomain`.
      See Also:
        Constant Field Values

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

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

  - ### Constructor Detail

    - #### EPPIdnTableCheckDomain

          public EPPIdnTableCheckDomain()

      Default constructor for `EPPIdnTableCheckDomain`.

    - #### EPPIdnTableCheckDomain

          public EPPIdnTableCheckDomain(java.lang.String aName,
                                        boolean aValid)

      Constructor for `EPPIdnTableCheckDomain` that takes the domain name and whether the domain name is a valid IDN domain name.
      Parameters:
        `aName` - Domain name
        `aValid` - Is the domain name a valid IDN domain name?

    - #### EPPIdnTableCheckDomain

          public EPPIdnTableCheckDomain(java.lang.String aName,
                                        boolean aValid,
                                        boolean aIdnmap)

      Constructor for `EPPIdnTableCheckDomain` that takes the domain name and whether the domain name is a valid IDN domain name, and whether the domain name requires the IDN mapping extension with a domain create of the domain name.
      Parameters:
        `aName` - Domain name
        `aValid` - Is the domain name a valid IDN domain name?
        `aIdnmap` - `true` if the IDN mapping extension is required on a domain create of the domain name; `false` otherwise.

    - #### EPPIdnTableCheckDomain

          public EPPIdnTableCheckDomain(java.lang.String aDomain,
                                        java.lang.String aReason)

      Constructor for `EPPIdnTableCheckDomain` that is used for invalid IDN domain names by providing the reason the domain name is not valid.
      Parameters:
        `aDomain` - Domain name
        `aReason` - Reason that the IDN domain name is not valid.

    - #### EPPIdnTableCheckDomain

          public EPPIdnTableCheckDomain(java.lang.String aDomain,
                                        java.util.List<java.lang.String> aTables)

      Constructor for `EPPIdnTableCheckDomain` that is used for valid IDN domain names by providing the list of IDN table identifiers.
      Parameters:
        `aDomain` - Domain name
        `aTables` - List of matching IDN table identifiers.

  - ### Method Detail

    - #### getName

          public java.lang.String getName()

      Returns the domain name.
      Returns:
        Domain name if defined: `null` otherwise.

    - #### setName

          public void setName(java.lang.String aDomain)

      Sets the domain name.
      Parameters:
        `aDomain` - Domain name

    - #### isValid

          public boolean isValid()

      Is the domain name a valid IDN domain name?
      Returns:
        `true` if it is a valid IDN domain name; `false` otherwise.

    - #### setValid

          public void setValid(boolean aValid)

      Sets whether the domain name is a valid IDN domain name.
      Parameters:
        `aValid` - `true` if the domain name is a valid IDN domain name; `false` otherwise.

    - #### isIdnmap

          public boolean isIdnmap()

      Is the IDN mapping extension required on a domain create of the domain name?
      Returns:
        `true` if the IDN mapping extension is required on a domain create of the domain name; `false` otherwise.

    - #### setIdnmap

          public void setIdnmap(boolean aIdnmap)

      Set whether the IDN mapping extension is required on a domain create of the domain name.
      Parameters:
        `aIdnmap` - `true` if the IDN mapping extension is required on a domain create of the domain name; `false` otherwise.

    - #### hasReason

          public boolean hasReason()

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

    - #### getReason

          public java.lang.String getReason()

      Gets the reason that the domain name is invalid.
      Returns:
        Reason that the domain name is invalid if defined; `null` otherwise.

    - #### setReason

          public void setReason(java.lang.String aReason)

      Sets the reason that the domain name is invalid.
      Parameters:
        `aReason` - Reason that the domain is invalid. Set to `null` to clear the reason.

    - #### hasReasonLang

          public boolean hasReasonLang()

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

    - #### getReasonLang

          public java.lang.String getReasonLang()

      Gets the reason language value.
      Returns:
        Reason language if defined; `null` otherwise.

    - #### setReasonLang

          public void setReasonLang(java.lang.String aReasonLang)

      Sets the reason language value.
      Parameters:
        `aReasonLang` - Reason language for reason value.

    - #### hasTables

          public boolean hasTables()

      Are any table identifiers defined in the list of table identifiers?
      Returns:
        `true` if there is at least one table identifier defined; `false` otherwise.

    - #### getTables

          public java.util.List<java.lang.String> getTables()

      Get the list of table identifiers.
      Returns:
        `List` of table identifier `String`'s

    - #### setTables

          public void setTables(java.util.List<java.lang.String> aTables)

      Set the list of table identifiers.
      Parameters:
        `aTables` - `List` of table identifier `String`'s

    - #### setTable

          public void setTable(java.lang.String aTable)

      Set an individual table identifier. This method clears the existing list of table identifiers.
      Parameters:
        `aTable` - Table identifier

    - #### addTable

          public void addTable(java.lang.String aTable)

      Append a table identifier to the list of table identifiers. This method does NOT clear the existing list of table identifiers.
      Parameters:
        `aTable` - Table identifier

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

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