com.verisign.epp.codec.idntable

## Class EPPIdnTableInfoCmd

- java.lang.Object
- - com.verisign.epp.codec.gen.EPPCommand
  - - com.verisign.epp.codec.gen.EPPInfoCmd
    - - com.verisign.epp.codec.idntable.EPPIdnTableInfoCmd

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

      public class EPPIdnTableInfoCmd
      extends EPPInfoCmd

  Represents an EPP Internationalized Domain Name (IDN) Table <info> command, which support three different forms:
  - Domain Info Form - Used to validate the domain name code points against the IDN Tables and IDN Policies, and to return the matching IDN Table meta-data.
  - Table Info Form - Used to retrieve information associated with an IDN Table object.
  - List Info Form - Used to retrieve the list of IDN Tables supported by the server.
  `EPPIdnTableInfoResp` is the concrete `EPPReponse` associated with `EPPIdnTableInfoCmd`.
  See Also:
    `EPPIdnTableInfoResp`, Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `EPPIdnTableInfoCmd.Form` Info form types, that include: `UNDEFINED_FORM` that represents an undefined state, where none of the forms can be determined. `DOMAIN_FORM` that represents the "Domain Info Form". `TABLE_FORM` that represents the "Table Info Form". `LIST_FORM` that represents the "List Info Form".

  - ### Field Summary

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

    - ### Fields inherited from class com.verisign.epp.codec.gen.EPPCommand

      `extensions, OP_APPROVE, OP_CANCEL, OP_QUERY, OP_REJECT, OP_REQUEST, transId, TYPE_CHECK, TYPE_CREATE, TYPE_DELETE, TYPE_INFO, TYPE_LOGIN, TYPE_LOGOUT, TYPE_POLL, TYPE_RENEW, TYPE_TRANSFER, TYPE_UPDATE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPIdnTableInfoCmd()` `EPPIdnTableInfoCmd` default constructor.
    `EPPIdnTableInfoCmd(java.lang.String aTransId)` `EPPIdnTableInfoCmd` constructor that only takes the client transaction identifier
    `EPPIdnTableInfoCmd(java.lang.String aTransId, EPPIdnTableInfoCmd.Form aForm, java.lang.String aValue)` `EPPIdnTableInfoCmd` constructor for setting an individual table identifier to check in Table Check Form.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()` Clone `EPPIdnTableInfoCmd`.
    `protected void` | `doDecode(org.w3c.dom.Element aElement)` Decode the `EPPIdnTableInfoCmd` attributes from the aElement DOM Element tree.
    `protected org.w3c.dom.Element` | `doEncode(org.w3c.dom.Document aDocument)` Encode a DOM Element tree from the attributes of the `EPPIdnTableInfoCmd` instance.
    `boolean` | `equals(java.lang.Object aObject)` Compare an instance of `EPPIdnTableInfoCmd` with this instance.
    `java.lang.String` | `getDomain()` Gets the domain name for Domain Info Form.
    `EPPIdnTableInfoCmd.Form` | `getForm()` What inform is being used?
    `java.lang.String` | `getNamespace()` Gets the EPP command Namespace associated with `EPPIdnTableInfoCmd`.
    `java.lang.String` | `getTable()` Gets the table identifier for Table Info Form.
    `boolean` | `hasDomain()` Is the domain defined?
    `boolean` | `hasTable()` Is the table defined?
    `void` | `setDomain(java.lang.String aDomain)` Sets the domain name for Domain Info Form.
    `void` | `setForm(EPPIdnTableInfoCmd.Form aForm)` Set the form of the info command using one of the `Form` enumerated values.
    `void` | `setTable(java.lang.String aTable)` Sets the table identifier for Table Info Form.
    `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 com.verisign.epp.codec.gen.EPPInfoCmd

      `doGenDecode, doGenEncode, getType`

    - ### Methods inherited from class com.verisign.epp.codec.gen.EPPCommand

      `addExtension, decode, encode, findDuplicateExtNamespaces, getExtension, getExtension, getExtensions, getOp, getTransId, hasExtension, hasExtensions, hasTransId, setExtension, setExtensions, setTransId`

    - ### 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 `EPPIdnTableInfoCmd`.
      See Also:
        Constant Field Values

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

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

  - ### Constructor Detail

    - #### EPPIdnTableInfoCmd

          public EPPIdnTableInfoCmd()

      `EPPIdnTableInfoCmd` default constructor.

    - #### EPPIdnTableInfoCmd

          public EPPIdnTableInfoCmd(java.lang.String aTransId)

      `EPPIdnTableInfoCmd` constructor that only takes the client transaction identifier
      Parameters:
        `aTransId` - Transaction Id associated with command.

    - #### EPPIdnTableInfoCmd

          public EPPIdnTableInfoCmd(java.lang.String aTransId,
                                    EPPIdnTableInfoCmd.Form aForm,
                                    java.lang.String aValue)

      `EPPIdnTableInfoCmd` constructor for setting an individual table identifier to check in Table Check Form.
      Parameters:
        `aTransId` - Transaction Id associated with command.
        `aForm` - What is the form of the info command?
        `aValue` - Value of the string passed with the form. Pass domain name for the `Form.DOMAIN_FORM`, table identifier for the `Form.TABLE_FORM`, and `null` for the `Form.LIST_FORM`.

  - ### Method Detail

    - #### getNamespace

          public java.lang.String getNamespace()

      Gets the EPP command Namespace associated with `EPPIdnTableInfoCmd`.
      Specified by:
        `getNamespace` in interface `EPPCodecComponent`
      Specified by:
        `getNamespace` in interface `EPPMessage`
      Specified by:
        `getNamespace` in class `EPPCommand`
      Returns:
        `EPPIdnTableMapFactory.NS`

    - #### hasDomain

          public boolean hasDomain()

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

    - #### getDomain

          public java.lang.String getDomain()

      Gets the domain name for Domain Info Form.
      Returns:
        The domain name if defined; `null` otherwise.

    - #### setDomain

          public void setDomain(java.lang.String aDomain)

      Sets the domain name for Domain Info Form. The form will be automatically set to `Form.DOMAIN_FORM` for a non-null domain value.
      Parameters:
        `aDomain` - Domain name in Domain Info Form.

    - #### hasTable

          public boolean hasTable()

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

    - #### getTable

          public java.lang.String getTable()

      Gets the table identifier for Table Info Form.
      Returns:
        The table identifier if defined; `null` otherwise.

    - #### setTable

          public void setTable(java.lang.String aTable)

      Sets the table identifier for Table Info Form. The form will be automatically set to `Form.TABLE_FORM` for a non-null table identifier value.
      Parameters:
        `aTable` - Table identifier

    - #### getForm

          public EPPIdnTableInfoCmd.Form getForm()

      What inform is being used?
      Returns:
        One of the `Form` enumerated values, where `UNDEFINED_FORM` is used when the form has not been set.

    - #### setForm

          public void setForm(EPPIdnTableInfoCmd.Form aForm)

      Set the form of the info command using one of the `Form` enumerated values.
      Parameters:
        `aForm` - One of the `Form` enumerated values.

    - #### doEncode

          protected org.w3c.dom.Element doEncode(org.w3c.dom.Document aDocument)
                                          throws EPPEncodeException

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

    - #### doDecode

          protected void doDecode(org.w3c.dom.Element aElement)
                           throws EPPDecodeException

      Decode the `EPPIdnTableInfoCmd` attributes from the aElement DOM Element tree.
      Specified by:
        `doDecode` in class `EPPInfoCmd`
      Parameters:
        `aElement` - Root DOM Element to decode `EPPIdnTableInfoCmd` from.
      Throws:
        `EPPDecodeException` - Unable to decode aElement

    - #### equals

          public boolean equals(java.lang.Object aObject)

      Compare an instance of `EPPIdnTableInfoCmd` with this instance.
      Overrides:
        `equals` in class `EPPInfoCmd`
      Parameters:
        `aObject` - Object to compare with.
      Returns:
        `true` if this object is the same as the aObject argument; `false` otherwise.

    - #### clone

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

      Clone `EPPIdnTableInfoCmd`.
      Specified by:
        `clone` in interface `EPPCodecComponent`
      Overrides:
        `clone` in class `EPPCommand`
      Returns:
        Deep copy clone of `EPPIdnTableInfoCmd`
      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 `EPPCommand`
      Returns:
        Indented XML `String` if successful; `ERROR` otherwise.