com.verisign.epp.codec.registry

## Class EPPRegistryZoneMember

- java.lang.Object
- - com.verisign.epp.codec.registry.EPPRegistryZoneMember

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

      public class EPPRegistryZoneMember
      extends java.lang.Object
      implements EPPCodecComponent

  Class that represents a related zone member that includes a type and zone name attribute.
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `ELM_LOCALNAME` Constant for the phase local name
    `static java.lang.String` | `ELM_NAME` Constant for the qualified name (prefix and local name)
    `static java.lang.String` | `TYPE_ALTERNATE` Constant where domain names of the zone can only be created when the primary domain name exists.
    `static java.lang.String` | `TYPE_EQUAL` Constant where there is no concept of primary and alternate domain names, so the related zones are treated as equal.
    `static java.lang.String` | `TYPE_PRIMARY` Constant where all domain names in the zone MUST be a primary domain name.
    `static java.lang.String` | `TYPE_PRIMARY_BASED_ON_CR_DATE` Constant where a domain name in the zone can be either a primary or alternate domain name based on the earliest created date.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPRegistryZoneMember()` Default constructor.
    `EPPRegistryZoneMember(java.lang.String aZoneName, java.lang.String aType)` Constructor that takes the required attributes including the zone name and the type of the zone member.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()` Clone `EPPRegistryZoneMember`.
    `void` | `decode(org.w3c.dom.Element aElement)` Decode the `EPPRegistryZoneMember` element aElement DOM Element tree.
    `org.w3c.dom.Element` | `encode(org.w3c.dom.Document aDocument)` Encode a DOM Element tree from the attributes of the `EPPRegistryZoneMember` instance.
    `boolean` | `equals(java.lang.Object aObject)` implements a deep `EPPRegistryZoneMember` compare.
    `java.lang.String` | `getNamespace()` Returns the XML namespace associated with the `EPPCodecComponent`.
    `java.lang.String` | `getType()` Gets the type of the related zone.
    `java.lang.String` | `getZoneName()` Gets the zone name of the related zone.
    `void` | `setType(java.lang.String aType)` Sets the type of the related zone.
    `void` | `setZoneName(java.lang.String aZoneName)` Sets the zone name of the related zone.
    `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 phase local name
      See Also:
        Constant Field Values

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

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

    - #### TYPE_PRIMARY

          public static final java.lang.String TYPE_PRIMARY

      Constant where all domain names in the zone MUST be a primary domain name.
      See Also:
        Constant Field Values

    - #### TYPE_ALTERNATE

          public static final java.lang.String TYPE_ALTERNATE

      Constant where domain names of the zone can only be created when the primary domain name exists.
      See Also:
        Constant Field Values

    - #### TYPE_PRIMARY_BASED_ON_CR_DATE

          public static final java.lang.String TYPE_PRIMARY_BASED_ON_CR_DATE

      Constant where a domain name in the zone can be either a primary or alternate domain name based on the earliest created date.
      See Also:
        Constant Field Values

    - #### TYPE_EQUAL

          public static final java.lang.String TYPE_EQUAL

      Constant where there is no concept of primary and alternate domain names, so the related zones are treated as equal. Domain names can be created and deleted in any order.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EPPRegistryZoneMember

          public EPPRegistryZoneMember()

      Default constructor. Both the `type` and the `zoneName` MUST be set.

    - #### EPPRegistryZoneMember

          public EPPRegistryZoneMember(java.lang.String aZoneName,
                                       java.lang.String aType)

      Constructor that takes the required attributes including the zone name and the type of the zone member.
      Parameters:
        `aZoneName` - Name of the zone.
        `aType` - Type of the zone member using one of the `TYPE` constants.

  - ### 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 `EPPRegistryZoneMember` 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 `EPPRegistryZoneMember` instance.
      Throws:
        `EPPEncodeException` - - Unable to encode `EPPRegistryZoneMember` instance.

    - #### decode

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

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

    - #### equals

          public boolean equals(java.lang.Object aObject)

      implements a deep `EPPRegistryZoneMember` compare.
      Overrides:
        `equals` in class `java.lang.Object`
      Parameters:
        `aObject` - `EPPRegistryZoneMember` instance to compare with
      Returns:
        `true` if equal; `false` otherwise

    - #### clone

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

      Clone `EPPRegistryZoneMember`.
      Specified by:
        `clone` in interface `EPPCodecComponent`
      Overrides:
        `clone` in class `java.lang.Object`
      Returns:
        clone of `EPPRegistryZoneMember`
      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.

    - #### getZoneName

          public java.lang.String getZoneName()

      Gets the zone name of the related zone.
      Returns:
        Zone name if set; `null` otherwise.

    - #### setZoneName

          public void setZoneName(java.lang.String aZoneName)

      Sets the zone name of the related zone.
      Parameters:
        `aZoneName` - Zone name

    - #### getType

          public java.lang.String getType()

      Gets the type of the related zone.
      Returns:
        One of the `TYPE` constant values if set; `null` otherwise.

    - #### setType

          public void setType(java.lang.String aType)

      Sets the type of the related zone.
      Parameters:
        `aType` - One of the `TYPE` constant values.

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