Class EPPRegistryExternalHost

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

    public class EPPRegistryExternalHost
    extends EPPRegistryMinMaxLength
    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 domains sponsored by an individual registrar client. Each registrar client will have its own set of external hosts to manage.
      • "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.
    See Also:
    EPPRegistryHost, Serialized Form
    • Field Detail

      • 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 external host (prefix and local name)
        See Also:
        Constant Field Values
      • ELM_SHARE_POLICY

        public static final java.lang.String ELM_SHARE_POLICY
        See Also:
        Constant Field Values
      • VALID_POLICIES

        public static final java.util.List VALID_POLICIES
        List of valid share policies
      • TYPE_PER_REGISTRAR

        public static final java.lang.String TYPE_PER_REGISTRAR
        Constant for perRegistrar policy
        See Also:
        Constant Field Values
      • TYPE_PER_ZONE

        public static final java.lang.String TYPE_PER_ZONE
        Constant for perZone policy
        See Also:
        Constant Field Values
      • TYPE_PER_SYSTEM

        public static final java.lang.String TYPE_PER_SYSTEM
        Constant for perSystem policy
        See Also:
        Constant Field Values
    • Constructor Detail

      • EPPRegistryExternalHost

        public EPPRegistryExternalHost()
        Default constructor
      • EPPRegistryExternalHost

        public EPPRegistryExternalHost​(java.lang.Integer min,
                                       java.lang.Integer max,
                                       java.lang.String sharePolicy)
        Constructor that takes min, max and sharePolicy.
        Parameters:
        min - minimum number of IPs supported for an external host
        max - maximum number of IPs supported for an external host
        sharePolicy - "perRegistrar", "perZone" or "perSystem"
      • EPPRegistryExternalHost

        public EPPRegistryExternalHost​(int min,
                                       int max,
                                       java.lang.String sharePolicy)
        Constructor that takes min, max and sharePolicy.
        Parameters:
        min - minimum number of IPs supported for an external host
        max - maximum number of IPs supported for an external host
        sharePolicy - "perRegistrar", "perZone" or "perSystem"
    • 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 EPPRegistryExternalHost instance.
        Specified by:
        encode in interface EPPCodecComponent
        Overrides:
        encode in class EPPRegistryMinMaxLength
        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.
      • clone

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

        public boolean equals​(java.lang.Object aObject)
        implements a deep EPPRegistryExternalHost compare.
        Overrides:
        equals in class EPPRegistryMinMaxLength
        Parameters:
        aObject - EPPRegistryExternalHost 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 EPPRegistryMinMaxLength
        Returns:
        Indented XML String if successful; ERROR otherwise.
      • getSharePolicy

        public java.lang.String getSharePolicy()
        Gets the shared policy.
        Returns:
        shared policy String
      • setSharePolicy

        public void setSharePolicy​(java.lang.String sharePolicy)
        Sets the shared policy.
        Parameters:
        sharePolicy - shared policy String
      • validateState

        protected void validateState()
                              throws EPPEncodeException
        Validate the state of the EPPRegistryExternalHost instance. A valid state means that all of the required attributes have been set. If validateState returns without an exception, the state is valid. If the state is not valid, the EPPCodecException will contain a description of the error. throws EPPCodecException State error. This will contain the name of the attribute that is not valid.
        Overrides:
        validateState in class EPPRegistryMinMaxLength
        Throws:
        EPPEncodeException - On invalid state