com.verisign.epp.codec.registry

## Class EPPRegistryDS

- java.lang.Object
- - com.verisign.epp.codec.registry.EPPRegistryKey
  - - com.verisign.epp.codec.registry.EPPRegistryDS

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

      public class EPPRegistryDS
      extends EPPRegistryKey

  Defines the DS Data Interface, as defined in RFC 5910, policies. The <registry:dsDataInterface> element contains the following child elements:
  - <registry:min> - the minimum number of DS associated with the domain object. Use `EPPRegistryKey.getMin()` and `EPPRegistryKey.setMin(Integer)` to get and set the element.
  - <registry:max> - the maximum number of DS associated with the domain object. Use `EPPRegistryKey.getMax()` and `EPPRegistryKey.setMax(Integer)` to get and set the element.
  - <registry:alg> - zero or more <registry:alg> elements that define the supported algorithms as described in section 5.1.2 of RFC 4034. Use `EPPRegistryKey.getAlgorithms()` and `EPPRegistryKey.setAlgorithms(List)` to get and set the element.
  - <registry:digestType> - zero or more <registry:digestType> elements that define the supported digest types as described in section 5.1.3 of RFC 4034. Use `getDigestTypes()` and `setDigestTypes(List)` to get and set the element.
  See Also:
    `EPPRegistryDNSSEC`, Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `ELM_DIGEST` XML tag name for the `digestTypeF` attribute.
    `static java.lang.String` | `ELM_NAME` XML Element Name of `EPPRegistryDS` root element.

    - ### Fields inherited from class com.verisign.epp.codec.registry.EPPRegistryKey

      `ALGORITHM, ELM_MAX, ELM_MIN`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPRegistryDS()` Constructs a new `EPPRegistryDS` object.
    `EPPRegistryDS(java.lang.Integer min, java.lang.Integer max, java.util.List algorithms, java.util.List digestTypes)` Constructs a new `EPPRegistryDS` with given values.
    `EPPRegistryDS(int min, int max, java.util.List algorithms, java.util.List digestTypes)` Constructs a new `EPPRegistryDS` with given values.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDigestType(java.lang.String digestType)` Add one digest type to an existing list.
    `java.lang.Object` | `clone()` Clone `EPPRegistryDS`.
    `void` | `decode(org.w3c.dom.Element aElement)` Decode the `EPPRegistryDS` 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 `EPPRegistryDS` instance.
    `boolean` | `equals(java.lang.Object aObject)` implements a deep `EPPRegistryDS` compare.
    `java.util.List` | `getDigestTypes()` Get digest types.
    `java.lang.String` | `getRootName()` DOCUMENT ME!
    `void` | `setDigestTypes(java.util.List digestTypes)` Set digest types.
    `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.registry.EPPRegistryKey

      `addAlgorithm, getAlgorithms, getMax, getMin, getNamespace, setAlgorithms, setMax, setMin`

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

    - #### ELM_DIGEST

          public static final java.lang.String ELM_DIGEST

      XML tag name for the `digestTypeF` attribute.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EPPRegistryDS

          public EPPRegistryDS()

      Constructs a new `EPPRegistryDS` object. All attributes are set to default. Must call `EPPRegistryKey.setMin(Integer)` and `EPPRegistryKey.setMax(Integer)` before calling `encode(Document)` method.

    - #### EPPRegistryDS

          public EPPRegistryDS(java.lang.Integer min,
                               java.lang.Integer max,
                               java.util.List algorithms,
                               java.util.List digestTypes)

      Constructs a new `EPPRegistryDS` with given values.
      Parameters:
        `min` - minimum number of DS associated with the domain object
        `max` - maximum number of DS associated with the domain object
        `algorithms` - `List` of algorithm `String`
        `digestTypes` - `List` of digest type `String`

    - #### EPPRegistryDS

          public EPPRegistryDS(int min,
                               int max,
                               java.util.List algorithms,
                               java.util.List digestTypes)

      Constructs a new `EPPRegistryDS` with given values.
      Parameters:
        `min` - minimum number of DS associated with the domain object
        `max` - maximum number of DS associated with the domain object
        `algorithms` - `List` of algorithm `String`
        `digestTypes` - `List` of digest type `String`

  - ### 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 `EPPRegistryDS` instance.
      Specified by:
        `encode` in interface `EPPCodecComponent`
      Overrides:
        `encode` in class `EPPRegistryKey`
      Parameters:
        `aDocument` - DOM Document that is being built. Used as an Element factory.
      Returns:
        Element Root DOM Element representing the `EPPRegistryDS` instance.
      Throws:
        `EPPEncodeException` - - Unable to encode `EPPRegistryDS` instance.

    - #### decode

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

      Decode the `EPPRegistryDS` attributes from the aElement DOM Element tree.
      Specified by:
        `decode` in interface `EPPCodecComponent`
      Overrides:
        `decode` in class `EPPRegistryKey`
      Parameters:
        `aElement` - Root DOM Element to decode `EPPRegistryDS` from.
      Throws:
        `EPPDecodeException` - Unable to decode aElement

    - #### clone

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

      Clone `EPPRegistryDS`.
      Specified by:
        `clone` in interface `EPPCodecComponent`
      Overrides:
        `clone` in class `EPPRegistryKey`
      Returns:
        clone of `EPPRegistryDS`
      Throws:
        `java.lang.CloneNotSupportedException` - standard Object.clone exception

    - #### equals

          public boolean equals(java.lang.Object aObject)

      implements a deep `EPPRegistryDS` compare.
      Overrides:
        `equals` in class `EPPRegistryKey`
      Parameters:
        `aObject` - `EPPRegistryDS` 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 `EPPRegistryKey`
      Returns:
        Indented XML `String` if successful; `ERROR` otherwise.

    - #### getDigestTypes

          public java.util.List getDigestTypes()

      Get digest types.
      Returns:
        `List` of digest type in `String`

    - #### setDigestTypes

          public void setDigestTypes(java.util.List digestTypes)

      Set digest types.
      Parameters:
        `digestTypes` - `List` of digest type in `String`

    - #### addDigestType

          public void addDigestType(java.lang.String digestType)

      Add one digest type to an existing list.
      Parameters:
        `digestType` - digest type in `String`

    - #### getRootName

          public java.lang.String getRootName()

      DOCUMENT ME!
      Overrides:
        `getRootName` in class `EPPRegistryKey`
      Returns:
        DOCUMENT ME!