com.verisign.epp.codec.verificationcode

## Class EPPVerificationCodeProfile

- java.lang.Object
- - com.verisign.epp.codec.verificationcode.EPPVerificationCodeProfile

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

      public class EPPVerificationCodeProfile
      extends java.lang.Object
      implements EPPCodecComponent

  Information associated with compliance with a verification code profile. A Verification Profile defines the set of verification code types, the commands that the verification code types are required, supported, or not supported, and the grace period by which the verification code types MUST be set. A server MAY support many verification profiles, each with a unique name and a unique verification policy that is implemented by the server.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `EPPVerificationCodeProfile.Status` Verification statuses that include: `NOT_APPLICABLE` - The profile status is not applicable to the client based on the assigned verification profiles or the profile specified. `NON_COMPLIANT` - The object is non-compliant according to the verification profile. `PENDING_COMPLIANCE` - The object is not in compliance with the verification profile, but has a grace period to set the required set of verification codes, as reflected by the due date of the verification code type. `COMPLIANT` The object is compliant with the verification profile.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `ELM_LOCALNAME` Constant for the profile local name
    `static java.lang.String` | `ELM_NAME` Constant for the profile tag

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPVerificationCodeProfile()` Create an `EPPVerificationCodeInfData` instance.
    `EPPVerificationCodeProfile(java.lang.String aProfileName, EPPVerificationCodeProfile.Status aStatus)` Create a EPPVerificationCodeInfData instance with the required attributes status.
    `EPPVerificationCodeProfile(java.lang.String aProfileName, EPPVerificationCodeProfile.Status aStatus, java.util.List<EPPVerificationCode> aMissingCodes, java.util.List<EPPVerificationCode> aSetCodes)` Create a EPPVerificationCodeInfData instance with the all required and optional attributes.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addMissingCode(EPPVerificationCode aMissingCode)` Add a missing code to the list of missing codes.
    `void` | `addSetCode(EPPVerificationCode aSetCode)` Add a set code to the list of set codes.
    `java.lang.Object` | `clone()` Clone `EPPVerificationCodeInfData`.
    `void` | `decode(org.w3c.dom.Element aElement)` Decode the EPPVerificationCodeInfData component
    `org.w3c.dom.Element` | `encode(org.w3c.dom.Document aDocument)` Sets all this instance's data in the given XML document
    `boolean` | `equals(java.lang.Object aObject)` implements a deep `EPPVerificationCodeInfData` compare.
    `java.util.List<EPPVerificationCode>` | `getMissingCodes()` Returns the list of missing codes.
    `java.lang.String` | `getNamespace()` Returns the XML namespace associated with the `EPPCodecComponent`.
    `java.lang.String` | `getProfileName()` Gets the verification profile name.
    `java.util.List<EPPVerificationCode>` | `getSetCodes()` Returns the list of set codes.
    `EPPVerificationCodeProfile.Status` | `getStatus()` Gets the verification status.
    `boolean` | `hasMissingCodes()` Are there any missing codes?
    `boolean` | `hasSetCodes()` Are there any set codes?
    `void` | `setMissingCodes(java.util.List<EPPVerificationCode> aMissingCodes)` Sets the missing codes.
    `void` | `setProfileName(java.lang.String aProfileName)` Sets the verification profile name.
    `void` | `setSetCodes(java.util.List<EPPVerificationCode> aSetCodes)` Sets the set codes.
    `void` | `setStatus(EPPVerificationCodeProfile.Status aStatus)` Sets the verification status.
    `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 profile local name
      See Also:
        Constant Field Values

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

      Constant for the profile tag
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EPPVerificationCodeProfile

          public EPPVerificationCodeProfile()

      Create an `EPPVerificationCodeInfData` instance.

    - #### EPPVerificationCodeProfile

          public EPPVerificationCodeProfile(java.lang.String aProfileName,
                                            EPPVerificationCodeProfile.Status aStatus)

      Create a EPPVerificationCodeInfData instance with the required attributes status.
      Parameters:
        `aProfileName` - Name of the profile
        `aStatus` - Status of the verification

    - #### EPPVerificationCodeProfile

          public EPPVerificationCodeProfile(java.lang.String aProfileName,
                                            EPPVerificationCodeProfile.Status aStatus,
                                            java.util.List<EPPVerificationCode> aMissingCodes,
                                            java.util.List<EPPVerificationCode> aSetCodes)

      Create a EPPVerificationCodeInfData instance with the all required and optional attributes.
      Parameters:
        `aProfileName` - Name of the profile
        `aStatus` - Status of the verification
        `aMissingCodes` - OPTIONAL missing codes. Set to `null` if there are no missing codes.
        `aSetCodes` - OPTIONAL set codes. Set to `null` if there are no set codes.

  - ### Method Detail

    - #### clone

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

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

    - #### encode

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

      Sets all this instance's data in the given XML document
      Specified by:
        `encode` in interface `EPPCodecComponent`
      Parameters:
        `aDocument` - a DOM Document to attach data to.
      Returns:
        The root element of this component.
      Throws:
        `EPPEncodeException` - Thrown if any errors prevent encoding.

    - #### decode

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

      Decode the EPPVerificationCodeInfData component
      Specified by:
        `decode` in interface `EPPCodecComponent`
      Parameters:
        `aElement` - Element to decode from
      Throws:
        `EPPDecodeException` - On decoding error

    - #### equals

          public boolean equals(java.lang.Object aObject)

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

    - #### getProfileName

          public java.lang.String getProfileName()

      Gets the verification profile name.
      Returns:
        Verification profile if defined; `null` otherwise.

    - #### setProfileName

          public void setProfileName(java.lang.String aProfileName)

      Sets the verification profile name.
      Parameters:
        `aProfileName` - Verification profile

    - #### getStatus

          public EPPVerificationCodeProfile.Status getStatus()

      Gets the verification status.
      Returns:
        Verification status

    - #### setStatus

          public void setStatus(EPPVerificationCodeProfile.Status aStatus)

      Sets the verification status.
      Parameters:
        `aStatus` - Verification status

    - #### hasMissingCodes

          public boolean hasMissingCodes()

      Are there any missing codes?
      Returns:
        `true` if there are missing codes; `false` otherwise.

    - #### getMissingCodes

          public java.util.List<EPPVerificationCode> getMissingCodes()

      Returns the list of missing codes. An empty list indicates that there are no missing codes.
      Returns:
        List of missing codes.

    - #### setMissingCodes

          public void setMissingCodes(java.util.List<EPPVerificationCode> aMissingCodes)

      Sets the missing codes.
      Parameters:
        `aMissingCodes` - The list of missing codes. Set to `null` or an empty list to indicate that there are no missing codes.

    - #### addMissingCode

          public void addMissingCode(EPPVerificationCode aMissingCode)

      Add a missing code to the list of missing codes.
      Parameters:
        `aMissingCode` - Missing code to add to the list of missing codes.

    - #### hasSetCodes

          public boolean hasSetCodes()

      Are there any set codes?
      Returns:
        `true` if there are set codes; `false` otherwise.

    - #### getSetCodes

          public java.util.List<EPPVerificationCode> getSetCodes()

      Returns the list of set codes. An empty list indicates that there are no set codes.
      Returns:
        List of set codes.

    - #### setSetCodes

          public void setSetCodes(java.util.List<EPPVerificationCode> aSetCodes)

      Sets the set codes.
      Parameters:
        `aSetCodes` - The list of set codes. Set to `null` or an empty list to indicate that there are no set codes.

    - #### addSetCode

          public void addSetCode(EPPVerificationCode aSetCode)

      Add a set code to the list of set codes.
      Parameters:
        `aSetCode` - Set code to add to the list of set codes.

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

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