Package com.verisign.epp.codec.coaext

## Class EPPCoaExtUpdate

- java.lang.Object
- - com.verisign.epp.codec.coaext.EPPCoaExtUpdate

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

      public class EPPCoaExtUpdate
      extends java.lang.Object
      implements EPPCodecComponent

  EPPCodecComponent that encodes and decodes a COA Update Tag.

  Title: EPP 1.0 Client Object Attribute - Update

  Description: The Update tag is used to represent the changes to an object's Client Object Attributes being performed as part of an epp <update> command. It consists of three collections, each of which are optional.

  - A collection of EPPCoaExtAttr objects representing new COAs being added to the object or having their values changed.
  - A collection of EPPCoaExtKey objects identifying existing COAs which are being removed from the object
  As XML, it is represented by a <coa:update> element, which in turn contains one or more of the following elements:
  - A <coa:put> element containing in turn one or more <coa:attr> elements, each describing a new COA being added or updated.
  - A <coa:rem> element containing in turn one or more <coa:key> elements, each identifying an existing COA being removed.

  Copyright: Copyright (c) 2011

  Company: VeriSign

  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `ELM_NAME` | Constant for the key tag
    `static java.lang.String` | `ELM_PUT` | Element tag name for the put
    `static java.lang.String` | `ELM_REM` | Element tag name for the rem

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EPPCoaExtUpdate()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `appendPutAttr​(EPPCoaExtAttr aAttr)` | Appends to the `List` of attributes `EPPCoaExtAttr` instances to add or update.
    `void` | `appendRemAttr​(EPPCoaExtKey aKey)` | Appends to the `List` of attribute keys `EPPCoaExtKey` instances to remove.
    `java.lang.Object` | `clone()` | A deep clone of the EPPCoaCreate.
    `void` | `decode​(org.w3c.dom.Element aElement)` | Populate the data of this instance with the data stored in the given Element of the DOM tree
    `org.w3c.dom.Element` | `encode​(org.w3c.dom.Document aDocument)` | Append all data from this COA update to the given DOM Document
    `boolean` | `equals​(java.lang.Object aObj)` | (non-Javadoc)
    `java.lang.String` | `getNamespace()` | Returns the XML namespace associated with the `EPPCodecComponent`.
    `java.util.List` | `getPutAttrs()` | Gets the list of Attributes to be added or updated.
    `java.util.List` | `getRemAttrs()` | Gets the list of Attribute keys to be removed.
    `void` | `setPutAttrs​(java.util.List aPutAttrs)` | Sets the `List` of attributes `EPPCoaExtAttr` instances to create.
    `void` | `setRemAttrs​(java.util.List remAttrs)` | Sets the `List` of attribute key `EPPCoaExtKey` instances to remove.

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

      Constant for the key tag
      See Also:
        Constant Field Values

    - #### ELM_PUT

          public static final java.lang.String ELM_PUT

      Element tag name for the put
      See Also:
        Constant Field Values

    - #### ELM_REM

          public static final java.lang.String ELM_REM

      Element tag name for the rem
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EPPCoaExtUpdate

          public EPPCoaExtUpdate()

  - ### Method Detail

    - #### getPutAttrs

          public java.util.List getPutAttrs()

      Gets the list of Attributes to be added or updated.
      Returns:
        `List` of attribute `EPPCoaExtAttr` instances if defined; `null` otherwise.

    - #### setPutAttrs

          public void setPutAttrs​(java.util.List aPutAttrs)

      Sets the `List` of attributes `EPPCoaExtAttr` instances to create.
      Parameters:
        `aPutAttrs` - `List` of `EPPCoaExtAttr` instances

    - #### getRemAttrs

          public java.util.List getRemAttrs()

      Gets the list of Attribute keys to be removed.
      Returns:
        `List` of attribute `EPPCoaExtKey` instances if defined; `null` otherwise.

    - #### setRemAttrs

          public void setRemAttrs​(java.util.List remAttrs)

      Sets the `List` of attribute key `EPPCoaExtKey` instances to remove.
      Parameters:
        `remAttrs` - `List` of `EPPCoaExtAttr` instances

    - #### decode

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

      Populate the data of this instance with the data stored in the given Element of the DOM tree
      Specified by:
        `decode` in interface `EPPCodecComponent`
      Parameters:
        `aElement` - The root element of the report fragment of XML
      Throws:
        `EPPDecodeException` - Thrown if any errors occur during decoding.

    - #### encode

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

      Append all data from this COA update to the given DOM Document
      Specified by:
        `encode` in interface `EPPCodecComponent`
      Parameters:
        `aDocument` - The DOM Document to append data to
      Returns:
        Encoded DOM `Element`
      Throws:
        `EPPEncodeException` - Thrown when errors occur during the encode attempt or if the instance is invalid.

    - #### clone

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

      A deep clone of the EPPCoaCreate.
      Specified by:
        `clone` in interface `EPPCodecComponent`
      Overrides:
        `clone` in class `java.lang.Object`
      Returns:
        clone of concrete `EPPCodecComponent`
      Throws:
        `java.lang.CloneNotSupportedException` - standard Object.clone exception
      See Also:
        `Object.clone()`

    - #### equals

          public boolean equals​(java.lang.Object aObj)

      (non-Javadoc)
      Overrides:
        `equals` in class `java.lang.Object`
      See Also:
        `Object.equals(java.lang.Object)`

    - #### appendPutAttr

          public void appendPutAttr​(EPPCoaExtAttr aAttr)

      Appends to the `List` of attributes `EPPCoaExtAttr` instances to add or update.
      Parameters:
        `aAttr` - `EPPCoaExtAttr` instance

    - #### appendRemAttr

          public void appendRemAttr​(EPPCoaExtKey aKey)

      Appends to the `List` of attribute keys `EPPCoaExtKey` instances to remove.
      Parameters:
        `aKey` - `EPPCoaExtKey` instance

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