com.verisign.epp.codec.registry

## Class EPPRegistryContact

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

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

      public class EPPRegistryContact
      extends java.lang.Object
      implements EPPCodecComponent

  Represents the optional contact object policy information per RFC 5733. The <registry:contact> element contains the following child elements:
  - <registry:contactIdRegEx> - The OPTIONAL regular expression used to validate the <contact:id> element defined in RFC 5733.
  - <registry:sharePolicy> - The OPTIONAL policy for the sharing of contacts in the server. The possible shared policy values include:
    - "perZone" - The contacts are shared across all objects of the zone. There is a single pool of contacts defined for the zone.
    - "perSystem" - The contacts are shared across all zones of the system. There is a single pool of contacts across all of the zones supported by the system.
  - <registry:intSupport> - A boolean value that defines whether the server supports the internationalized form of postal-address information using the type="int" attribute of RFC 5733.
  - <registry:locSupport> - A boolean value that defines whether the server supports the localized form of postal-address information using the type="loc" attribute of RFC 5733.
  - <registry:postalInfo> - The postal-address information policy information.
  - <registry:maxCheckContact> - The maximum number of contact identifiers (<contact:id> elements) that can be included in a contact check command defined in RFC 5733.
  - <registry:authInfoRegex> - The OPTIONAL regular expression used to validate the contact object authorization information value.
  - <registry:clientDisclosureSupported> - The OPTIONAL flag that indicates whether the server supports the client to identify elements that require exception server-operator handling to allow or restrict disclosure to third parties defined in RFC 5733. Default value is `false`.
  - <registry:supportedStatus> - The OPTIONAL set of supported contact statuses defined in RFC 5733.
  - <registry:transferHoldPeriod> - The OPTIONAL period of time a contact object is in the pending transfer before the transfer is auto approved by the server. The <registry:transferHoldPeriod> element MUST have the "unit" attribute with the possible values of "y" for year, "m" for month, and "d" for day.
  - <registry:customData> - The OPTIONAL set of custom data using key, value pairs.
  See Also:
    `EPPRegistryRegex`, `EPPRegistryPostal`, `EPPRegistrySupportedStatus`, `EPPRegistryTransferHoldPeriodType`, `EPPRegistryCustomData`, Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `ELM_AUTH_INFO_REGEX` XML local name for the authInfoRegex
    `static java.lang.String` | `ELM_CONTACT_ID_REGEX` XML local name for the contactIdRegex
    `static java.lang.String` | `ELM_CUSTOM_CLIENT_DISCLOSURE_SUPPORTED` XML local name for the clientDisclosureSupported
    `static java.lang.String` | `ELM_CUSTOM_DATA` XML local name for the customData
    `static java.lang.String` | `ELM_INT_SUPPORT` XML local name for the intSupport
    `static java.lang.String` | `ELM_LOC_SUPPORT` XML local name for the locSupport
    `static java.lang.String` | `ELM_LOCALNAME` Constant for the status local name
    `static java.lang.String` | `ELM_MAX_CHECK` XML local name for the maxCheckContact
    `static java.lang.String` | `ELM_NAME` Constant for the contact (prefix and local name)
    `static java.lang.String` | `ELM_SHARE_POLICY` XML local name for the sharePolicy
    `static java.lang.String` | `TYPE_PER_SYSTEM` Constant for share policy where contacts are shared across all zones of the system.
    `static java.lang.String` | `TYPE_PER_ZONE` Constant for share policy where contacts are shared across all objects of the zone.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPRegistryContact()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()` Clone `EPPRegistryContact`.
    `void` | `decode(org.w3c.dom.Element aElement)` Decode the `EPPRegistryContact` 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 `EPPRegistryContact` instance.
    `boolean` | `equals(java.lang.Object aObject)` implements a deep `EPPRegistryContact` compare.
    `EPPRegistryRegex` | `getAuthInfoRegex()` Gets authInfo regular expression.
    `java.lang.Boolean` | `getClientDisclosureSupported()` Gets client disclosure flag.
    `EPPRegistryRegex` | `getContactIdRegex()` Get info about regular expression used to validate the contact object contact Id value.
    `EPPRegistryCustomData` | `getCustomData()` Gets set of custom data using key, value pairs.
    `java.lang.Boolean` | `getIntSupport()` Gets flag for internationalization support
    `java.lang.Boolean` | `getLocSupport()` Gets flag for localization support
    `java.lang.Integer` | `getMaxCheckContact()` Gets maximum number of contacts allowed in the check command.
    `java.lang.String` | `getNamespace()` Returns the XML namespace associated with the `EPPCodecComponent`.
    `EPPRegistryPostal` | `getPostalInfo()` Gets postal-address information policy information.
    `java.lang.String` | `getSharePolicy()` Gets the policy for the sharing of contacts in the server.
    `EPPRegistrySupportedStatus` | `getSupportedStatus()` Gets a set of supported host statuses defined in RFC 5733.
    `EPPRegistryTransferHoldPeriodType` | `getTransferHoldPeriod()` Get the period of time a contact object is in the pending transfer before the transfer is auto approved by the server
    `void` | `setAuthInfoRegex(EPPRegistryRegex authInfoRegex)` Gets authInfo regular expression.
    `void` | `setClientDisclosureSupported(java.lang.Boolean clientDisclosureSupported)` Sets client disclosure flag.
    `void` | `setContactIdRegex(EPPRegistryRegex aContactIdRegex)` Set info about regular expression used to validate the contact object contact Id value.
    `void` | `setCustomData(EPPRegistryCustomData customData)` Set set of custom data using key, value pairs.
    `void` | `setIntSupport(java.lang.Boolean intSupport)` Sets flag for internationalization support
    `void` | `setLocSupport(java.lang.Boolean locSupport)` Sets flag for localization support
    `void` | `setMaxCheckContact(java.lang.Integer maxCheckContact)` Gets maximum number of contacts allowed in the check command.
    `void` | `setPostalInfo(EPPRegistryPostal postalInfo)` Sets postal-address information policy information.
    `void` | `setSharePolicy(java.lang.String aSharePolicy)` Sets the policy for the sharing of contacts in the server.
    `void` | `setSupportedStatus(EPPRegistrySupportedStatus supportedStatus)` Sets a set of supported host statuses defined in RFC 5733.
    `void` | `setTransferHoldPeriod(EPPRegistryTransferHoldPeriodType transferHoldPeriod)` Set the period of time a contact object is in the pending transfer before the transfer is auto approved by the server
    `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

    - #### TYPE_PER_ZONE

          public static final java.lang.String TYPE_PER_ZONE

      Constant for share policy where contacts are shared across all objects of the zone. There is a single pool of contacts defined for the zone.
      See Also:
        Constant Field Values

    - #### TYPE_PER_SYSTEM

          public static final java.lang.String TYPE_PER_SYSTEM

      Constant for share policy where contacts are shared across all zones of the system. There is a single pool of contacts across all of the zones supported by the system.
      See Also:
        Constant Field Values

    - #### ELM_LOCALNAME

          public static final java.lang.String ELM_LOCALNAME

      Constant for the status local name
      See Also:
        Constant Field Values

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

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

    - #### ELM_CONTACT_ID_REGEX

          public static final java.lang.String ELM_CONTACT_ID_REGEX

      XML local name for the contactIdRegex
      See Also:
        Constant Field Values

    - #### ELM_SHARE_POLICY

          public static final java.lang.String ELM_SHARE_POLICY

      XML local name for the sharePolicy
      See Also:
        Constant Field Values

    - #### ELM_INT_SUPPORT

          public static final java.lang.String ELM_INT_SUPPORT

      XML local name for the intSupport
      See Also:
        Constant Field Values

    - #### ELM_LOC_SUPPORT

          public static final java.lang.String ELM_LOC_SUPPORT

      XML local name for the locSupport
      See Also:
        Constant Field Values

    - #### ELM_MAX_CHECK

          public static final java.lang.String ELM_MAX_CHECK

      XML local name for the maxCheckContact
      See Also:
        Constant Field Values

    - #### ELM_AUTH_INFO_REGEX

          public static final java.lang.String ELM_AUTH_INFO_REGEX

      XML local name for the authInfoRegex
      See Also:
        Constant Field Values

    - #### ELM_CUSTOM_DATA

          public static final java.lang.String ELM_CUSTOM_DATA

      XML local name for the customData
      See Also:
        Constant Field Values

    - #### ELM_CUSTOM_CLIENT_DISCLOSURE_SUPPORTED

          public static final java.lang.String ELM_CUSTOM_CLIENT_DISCLOSURE_SUPPORTED

      XML local name for the clientDisclosureSupported
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EPPRegistryContact

          public EPPRegistryContact()

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

    - #### decode

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

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

    - #### clone

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

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

    - #### equals

          public boolean equals(java.lang.Object aObject)

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

    - #### getContactIdRegex

          public EPPRegistryRegex getContactIdRegex()

      Get info about regular expression used to validate the contact object contact Id value.
      Returns:
        instance of `EPPRegistryRegex` that specifies regular expression used to validate the domain object authorization information value

    - #### setContactIdRegex

          public void setContactIdRegex(EPPRegistryRegex aContactIdRegex)

      Set info about regular expression used to validate the contact object contact Id value.
      Parameters:
        `aContactIdRegex` - instance of `EPPRegistryRegex` that specifies regular expression used to validate the contact object contact Id value

    - #### getSharePolicy

          public java.lang.String getSharePolicy()

      Gets the policy for the sharing of contacts in the server.
      Returns:
        `TYPE_PER_ZONE` to share contacts per zone, `TYPE_PER_SYSTEM` to share contact for all zones of the system if defined; `null` otherwise.

    - #### setSharePolicy

          public void setSharePolicy(java.lang.String aSharePolicy)

      Sets the policy for the sharing of contacts in the server.
      Parameters:
        `aSharePolicy` - `TYPE_PER_ZONE` to share contacts per zone or `TYPE_PER_SYSTEM` to share contact for all zones of the system

    - #### getIntSupport

          public java.lang.Boolean getIntSupport()

      Gets flag for internationalization support
      Returns:
        `true` if internationalized form of postal-address is supported. `false` otherwise

    - #### setIntSupport

          public void setIntSupport(java.lang.Boolean intSupport)

      Sets flag for internationalization support
      Parameters:
        `intSupport` - `true` if internationalized form of postal-address is supported. `false` otherwise

    - #### getLocSupport

          public java.lang.Boolean getLocSupport()

      Gets flag for localization support
      Returns:
        `true` if localized form of postal-address is supported. `false` otherwise

    - #### setLocSupport

          public void setLocSupport(java.lang.Boolean locSupport)

      Sets flag for localization support
      Parameters:
        `locSupport` - `true` if localized form of postal-address is supported. `false` otherwise

    - #### getMaxCheckContact

          public java.lang.Integer getMaxCheckContact()

      Gets maximum number of contacts allowed in the check command.
      Returns:
        maximum number of contact identifiers (<contact:id> elements) that can be included in a contact check command defined in RFC 5733

    - #### setMaxCheckContact

          public void setMaxCheckContact(java.lang.Integer maxCheckContact)

      Gets maximum number of contacts allowed in the check command.
      Parameters:
        `maxCheckContact` - maximum number of contact identifiers (<contact:id> elements) that can be included in a contact check command defined in RFC 5733

    - #### getAuthInfoRegex

          public EPPRegistryRegex getAuthInfoRegex()

      Gets authInfo regular expression.
      Returns:
        regular expression used to validate the contact object authorization information value

    - #### setAuthInfoRegex

          public void setAuthInfoRegex(EPPRegistryRegex authInfoRegex)

      Gets authInfo regular expression.
      Parameters:
        `authInfoRegex` - regular expression used to validate the contact object authorization information value

    - #### getCustomData

          public EPPRegistryCustomData getCustomData()

      Gets set of custom data using key, value pairs.
      Returns:
        instance of `EPPRegistryCustomData` that gives users the ability to specify custom data with key/value pairs

    - #### setCustomData

          public void setCustomData(EPPRegistryCustomData customData)

      Set set of custom data using key, value pairs.
      Parameters:
        `customData` - instance of `EPPRegistryCustomData` that gives users the ability to specify custom data with key/value pairs

    - #### getPostalInfo

          public EPPRegistryPostal getPostalInfo()

      Gets postal-address information policy information.
      Returns:
        the postal-address information policy information

    - #### setPostalInfo

          public void setPostalInfo(EPPRegistryPostal postalInfo)

      Sets postal-address information policy information.
      Parameters:
        `postalInfo` - the postal-address information policy information

    - #### getClientDisclosureSupported

          public java.lang.Boolean getClientDisclosureSupported()

      Gets client disclosure flag.
      Returns:
        `true` if the server supports the client to identify elements that require exception server-operator handling to allow or restrict disclosure to third parties defined in RFC 5733. `false` otherwise

    - #### setClientDisclosureSupported

          public void setClientDisclosureSupported(java.lang.Boolean clientDisclosureSupported)

      Sets client disclosure flag.
      Parameters:
        `clientDisclosureSupported` - `true` if the server supports the client to identify elements that require exception server-operator handling to allow or restrict disclosure to third parties defined in RFC 5733. `false` otherwise

    - #### getSupportedStatus

          public EPPRegistrySupportedStatus getSupportedStatus()

      Gets a set of supported host statuses defined in RFC 5733.
      Returns:
        set of supported host statuses defined in RFC 5733

    - #### setSupportedStatus

          public void setSupportedStatus(EPPRegistrySupportedStatus supportedStatus)

      Sets a set of supported host statuses defined in RFC 5733.
      Parameters:
        `supportedStatus` - set of supported host statuses defined in RFC 5733

    - #### getTransferHoldPeriod

          public EPPRegistryTransferHoldPeriodType getTransferHoldPeriod()

      Get the period of time a contact object is in the pending transfer before the transfer is auto approved by the server
      Returns:
        instance of `EPPRegistryTransferHoldPeriodType`

    - #### setTransferHoldPeriod

          public void setTransferHoldPeriod(EPPRegistryTransferHoldPeriodType transferHoldPeriod)

      Set the period of time a contact object is in the pending transfer before the transfer is auto approved by the server
      Parameters:
        `transferHoldPeriod` - instance of `EPPRegistryTransferHoldPeriodType`

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