Class EPPRegistryExternalHost

java.lang.Object
com.verisign.epp.codec.registry.v02.EPPRegistryAbstractMinMax
com.verisign.epp.codec.registry.v02.EPPRegistryExternalHost
All Implemented Interfaces:
EPPCodecComponent, Serializable, Cloneable

public class EPPRegistryExternalHost extends EPPRegistryAbstractMinMax
Defines the policies for external hosts. The <registry:external> elements contains the following child elements:
  • <registry:minIP> - Minimum number of IP addresses supported for an external host.
  • <registry:maxIP> - Maximum number of IP addresses supported for an external host.
  • <registry:sharePolicy> - The OPTIONAL policy for the sharing of external hosts in the server.The possible shared policy values include:
    • "perRegistrar" - The external hosts are shared across all domains of the registrar. There is a single pool of external hosts defined per registrar.
    • "perZone" - The external hosts are shared across all domains of the zone. There is a single pool of external hosts defined for the zone.
    • "perSystem" - The external hosts are shared across all zones of the system. There is a single pool of external hosts across all of the zones supported by the system.
  • <registry:uniqueIpAddressRequired> - The OPTIONAL boolean value that indicates that all of the IP addresses for the host object must be unique, with a default value of "false".
See Also:
  • Field Details

    • ELM_LOCALNAME

      public static final String ELM_LOCALNAME
      XML local name for EPPRegistryExternalHost.
      See Also:
    • ELM_NAME

      public static final String ELM_NAME
      XML root tag for EPPRegistryExternalHost.
      See Also:
    • ELM_MIN_IP

      protected static final String ELM_MIN_IP
      XML Element Name of min attribute.
      See Also:
    • ELM_MAX_IP

      protected static final String ELM_MAX_IP
      XML Element Name of max attribute.
      See Also:
    • ELM_SHARE_POLICY

      public static final String ELM_SHARE_POLICY
      XML Element Name of sharePolicy attribute.
      See Also:
    • ELM_UNIQUE_IP_ADDRESSES_REQUIRED

      public static final String ELM_UNIQUE_IP_ADDRESSES_REQUIRED
      XML Element Name of uniqueIpAddressesRequired attribute.
      See Also:
  • Constructor Details

    • EPPRegistryExternalHost

      public EPPRegistryExternalHost()
      Creates a new EPPRegistryExternalHost object.
    • EPPRegistryExternalHost

      public EPPRegistryExternalHost(Integer aMin, Integer aMax, EPPRegistryExternalHost.SharePolicy aSharePolicy, Boolean aUniqueIpAddressesRequired)
      Constructor that takes min, max, sharePolicy, and uniqueIpAddressesRequired using Integer's.
      Parameters:
      aMin - minimum number of IPs supported for an external host
      aMax - maximum number of IPs supported for an external host
      aSharePolicy - Share policy to set. Set to null if undefined.
      aUniqueIpAddressesRequired - Indicates that all of the IP addresses for the host object must be unique, with a default value of "false". Set to null to set the default.
    • EPPRegistryExternalHost

      public EPPRegistryExternalHost(int aMin, int aMax, EPPRegistryExternalHost.SharePolicy aSharePolicy, Boolean aUniqueIpAddressesRequired)
      Constructor that takes min, max, sharePolicy, and uniqueIpAddressesRequired using int's.
      Parameters:
      aMin - minimum number of IPs supported for an external host
      aMax - maximum number of IPs supported for an external host
      aSharePolicy - Share policy to set. Set to null if undefined.
      aUniqueIpAddressesRequired - Indicates that all of the IP addresses for the host object must be unique, with a default value of "false". Set to null to set the default.
  • Method Details

    • encode

      public Element encode(Document aDocument) throws EPPEncodeException
      Encode a DOM Element tree from the attributes of the EPPRegistryExternalHost instance.
      Specified by:
      encode in interface EPPCodecComponent
      Overrides:
      encode in class EPPRegistryAbstractMinMax
      Parameters:
      aDocument - DOM Document that is being built. Used as an Element factory.
      Returns:
      Element Root DOM Element representing the EPPRegistryExternalHost instance.
      Throws:
      EPPEncodeException - - Unable to encode EPPRegistryExternalHost instance.
    • decode

      public void decode(Element aElement) throws EPPDecodeException
      Decode the EPPRegistryExternalHost attributes from the aElement DOM Element tree.
      Specified by:
      decode in interface EPPCodecComponent
      Overrides:
      decode in class EPPRegistryAbstractMinMax
      Parameters:
      aElement - Root DOM Element to decode EPPRegistryExternalHost from.
      Throws:
      EPPDecodeException - Unable to decode aElement
    • clone

      public Object clone() throws CloneNotSupportedException
      Clone EPPRegistryExternalHost.
      Specified by:
      clone in interface EPPCodecComponent
      Overrides:
      clone in class EPPRegistryAbstractMinMax
      Returns:
      clone of EPPRegistryExternalHost
      Throws:
      CloneNotSupportedException - standard Object.clone exception
    • equals

      public boolean equals(Object aObject)
      implements a deep EPPRegistryExternalHost compare.
      Overrides:
      equals in class EPPRegistryAbstractMinMax
      Parameters:
      aObject - EPPRegistryExternalHost instance to compare with
      Returns:
      true if this object is the same as the aObject argument; false otherwise
    • hasSharePolicy

      public boolean hasSharePolicy()
      Is the share policy defined?
      Returns:
      true if the share policy is defined; false otherwise.
    • getSharePolicy

      public EPPRegistryExternalHost.SharePolicy getSharePolicy()
      Gets the share policy.
      Returns:
      share policy if defined; null otherwise.
    • setSharePolicy

      public void setSharePolicy(EPPRegistryExternalHost.SharePolicy aSharePolicy)
      Sets the share policy.
      Parameters:
      aSharePolicy - Share policy. Set to null to clear it.
    • getUniqueIpAddressesRequired

      public Boolean getUniqueIpAddressesRequired()
      Gets the OPTIONAL boolean value that indicates that all of the IP addresses for the host object must be unique, with a default value of "false".
      Returns:
      the uniqueIpAddressesRequired boolean value.
    • setUniqueIpAddressesRequired

      public void setUniqueIpAddressesRequired(Boolean aUniqueIpAddressesRequired)
      Sets the OPTIONAL boolean value that indicates that all of the IP addresses for the host object must be unique, with a default value of "false".
      Parameters:
      aUniqueIpAddressesRequired - Set the boolean value. If set to null the default value of "false" will be set.
    • toString

      public String toString()
      Implementation of Object.toString, which will result in an indented XML String representation of the concrete EPPCodecComponent.
      Overrides:
      toString in class EPPRegistryAbstractMinMax
      Returns:
      Indented XML String if successful; ERROR otherwise.
    • getRootName

      protected String getRootName()
      Gets the root element local name.
      Specified by:
      getRootName in class EPPRegistryAbstractMinMax
      Returns:
      Root element local name.
    • getElmMin

      protected String getElmMin()
      Gets the minimum element local name.
      Specified by:
      getElmMin in class EPPRegistryAbstractMinMax
      Returns:
      Minimum element local name.
    • getElmMax

      protected String getElmMax()
      Gets the maximum element local name.
      Specified by:
      getElmMax in class EPPRegistryAbstractMinMax
      Returns:
      Maximum element local name.
    • getLogger

      protected org.slf4j.Logger getLogger()
      Gets the Logger to use.
      Specified by:
      getLogger in class EPPRegistryAbstractMinMax
      Returns:
      Logger instance to use for logging.