Class EPPRegistryZone

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

    public class EPPRegistryZone
    extends java.lang.Object
    implements EPPCodecComponent, EPPRegistryZoneInterface
    Represents the detailed information of a zone object. Upon receiving an <info> command, with a <registry:name> element in it, the server puts a <registry:zone> element in the response.

    Each element in the list contains the following info:
    • <registry:name> - fully qualified name of the zone object. Zone name can be at any level (top level, second level, third level, etc.). Use getName() and setName(String) to get and set the element.
    • <registry:group> - An OPTIONAL server defined grouping of zones. Zone in one group share similar features and policies. Use getGroup() and setGroup(String) to get and set the element.
    • <registry:services> - The OPTIONAL EPP namespace URIs of the objects and object extensions supported by the server based on RFC 5730. Use getServices() and setServices(EPPRegistryServices) to get and set the element.
    • <registry:crID> - The OPTIONAL identifier of the client that created the zone. Use getCreatedBy() and setCreatedBy(String) to get and set the element.
    • <registry:crDate> - The OPTIONAL date and time of zone object creation. The <registry:crDate> element MUST be set if the zone object has already been created. Use getCreatedDate() and setCreatedDate(Date) to get and set the element.
    • <registry:upID> - The OPTIONAL identifier of the client that last updated the zone object.This element MUST NOT be present if the zone has never been modified. Use getLastUpdatedBy() and setLastUpdatedBy(String) to get and set the element.
    • <registry:upDate> - The OPTIONAL date and time of the most recent zone object modification. This element MUST NOT be present if the zone object has never been modified. Use getLastUpdatedDate() and setLastUpdatedDate(Date) to get and set the element.
    • <registry:unsupportedData> - The OPTIONAL policy associated with receipt of unsupported data sent by the client to the server. The unsupported data may be an unsupported element or extension. The server SHOULD be consistent in the handling of unsupported data.
    • <registry:batch> - The OPTIONAL list of batch jobs.
    • <registry:system> - The OPTIONAL list of zones that makeup the system when the "perSystem" share policy is used for the internal hosts, external hosts, or contacts. The list of zones are listed independent of the client's privileges to provision domains in the zone.
    • <registry:domain> - The domain name object policy information per RFC 5731. Use getDomain() and setDomain(EPPRegistryDomain) to get and set the element.
    • <registry:host> - The host object policy information per RFC 5732. Use getHost() and setHost(EPPRegistryHost) to get and set the element.
    • <registry:contact> - The contact object policy information per RFC 5733. Use getContact() and setContact(EPPRegistryContact) to get and set the element.
    See Also:
    EPPRegistryZoneSummary, EPPRegistryServices, EPPRegistryDomain, EPPRegistryHost, EPPRegistryContact, Serialized Form
    • Field Detail

      • ELM_LOCALNAME

        public static final java.lang.String ELM_LOCALNAME
        XML local name for EPPRegistryZone.
        See Also:
        Constant Field Values
      • ELM_NAME

        public static final java.lang.String ELM_NAME
        XML root tag for EPPRegistryZone.
        See Also:
        Constant Field Values
    • Constructor Detail

      • EPPRegistryZone

        public EPPRegistryZone​(java.lang.String aName,
                               java.lang.String aCreatedBy,
                               java.util.Date aCreatedDate)
        Construct an EPPRegistryZone instance using a zone name as an aLabel, a create id and a create date.

        All other non list attributes are initialized to null. phases is initialized to empty List.

        Please make sure to set the required attributes before calling the encode(Document) method:
        Parameters:
        aName - fully qualified name of the zone as an aLabel
        aCreatedBy - identifier of the client that created the zone
        aCreatedDate - creation date of the zone
      • EPPRegistryZone

        public EPPRegistryZone​(EPPRegistryZoneName aName,
                               java.lang.String aCreatedBy,
                               java.util.Date aCreatedDate)
        Construct an EPPRegistryZone instance using a zone name, a create id and a create date.

        All other non list attributes are initialized to null. phases is initialized to empty List.

        Please make sure to set the required attributes before calling the encode(Document) method:
        Parameters:
        aName - fully qualified name of the zone
        aCreatedBy - identifier of the client that created the zone
        aCreatedDate - creation date of the zone
    • 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 EPPRegistryZone 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 EPPRegistryZone instance.
        Throws:
        EPPEncodeException - - Unable to encode EPPRegistryZone instance.
      • decode

        public void decode​(org.w3c.dom.Element aElement)
                    throws EPPDecodeException
        Decode the EPPRegistryZone attributes from the aElement DOM Element tree.
        Specified by:
        decode in interface EPPCodecComponent
        Parameters:
        aElement - Root DOM Element to decode EPPRegistryZone from.
        Throws:
        EPPDecodeException - Unable to decode aElement
      • equals

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

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Clone EPPRegistryZone.
        Specified by:
        clone in interface EPPCodecComponent
        Overrides:
        clone in class java.lang.Object
        Returns:
        clone of EPPRegistryZone
        Throws:
        java.lang.CloneNotSupportedException - standard Object.clone exception
      • 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.
      • hasName

        public boolean hasName()
        Is the name defined?
        Returns:
        true if the name is defined; false otherwise.
      • getName

        public EPPRegistryZoneName getName()
        Gets the name of zone.
        Returns:
        fully qualified zone name
      • setName

        public void setName​(EPPRegistryZoneName aName)
        Sets the name of zone.
        Parameters:
        aName - fully qualified zone name.
      • setName

        public void setName​(java.lang.String aName)
        Sets the name of zone as an aLabel.
        Parameters:
        aName - fully qualified zone name as an aLabel.
      • hasServices

        public boolean hasServices()
        Is the services defined?
        Returns:
        true if the services is defined; false otherwise.
      • getServices

        public EPPRegistryServices getServices()
        Get services supported by the zone
        Returns:
        instance of EPPRegistryServices that lists namespace URIs of the objects and object extensions supported by the zone
      • setServices

        public void setServices​(EPPRegistryServices services)
        Set services supported by the zone
        Parameters:
        services - instance of EPPRegistryServices that lists namespace URIs of the objects and object extensions supported by the zone
      • hasCreatedBy

        public boolean hasCreatedBy()
        Is the created by defined?
        Returns:
        true if the created by is defined; false otherwise.
      • getCreatedBy

        public java.lang.String getCreatedBy()
        Get the identifier of the client that created the zone.
        Returns:
        the identifier of the client that created the zone
      • setCreatedBy

        public void setCreatedBy​(java.lang.String createdBy)
        Set the identifier of the client that created the zone
        Parameters:
        createdBy - the identifier of the client that created the zone
      • hasCreatedDate

        public boolean hasCreatedDate()
        Is the created date defined?
        Returns:
        true if the created date is defined; false otherwise.
      • getCreatedDate

        public java.util.Date getCreatedDate()
        Get zone creation date.
        Returns:
        zone creation date
      • setCreatedDate

        public void setCreatedDate​(java.util.Date createdDate)
        set zone create date.
        Parameters:
        createdDate - zone creation date
      • hasLastUpdatedBy

        public boolean hasLastUpdatedBy()
        Is the last updated by defined?
        Returns:
        true if the last updated by is defined; false otherwise.
      • getLastUpdatedBy

        public java.lang.String getLastUpdatedBy()
        Get the identifier of the client that last updated the zone object.
        Returns:
        the identifier of the client that last updated the zone object, or null if the zone object has never been updated.
      • setLastUpdatedBy

        public void setLastUpdatedBy​(java.lang.String lastUpdatedBy)
        Set the identifier of the client that last updated the zone object.
        Parameters:
        lastUpdatedBy - the identifier of the client that last updated the zone object
      • hasLastUpdatedDate

        public boolean hasLastUpdatedDate()
        Is the last updated date defined?
        Returns:
        true if the last updated date is defined; false otherwise.
      • getLastUpdatedDate

        public java.util.Date getLastUpdatedDate()
        Get the zone last updated date.
        Returns:
        the last updated date of the zone object, or null if the zone has never been updated.
      • setLastUpdatedDate

        public void setLastUpdatedDate​(java.util.Date lastUpdatedDate)
        Set the zone last updated date.
        Parameters:
        lastUpdatedDate - the last updated date of the zone object
      • hasUnsupportedData

        public boolean hasUnsupportedData()
        Is the unsupported data policy defined?
        Returns:
        true if the unsupported data policy is defined; false otherwise.
      • getUnsupportedData

        public EPPRegistryZone.UnsupportedData getUnsupportedData()
        Gets the unsupported data policy.
        Returns:
        unsupported data policy if defined; null otherwise.
      • setUnsupportedData

        public void setUnsupportedData​(EPPRegistryZone.UnsupportedData aUnsupportedData)
        Sets the unsupported data policy.
        Parameters:
        aUnsupportedData - Unsupported data policy. Set to null to clear it.
      • hasBatchJobs

        public boolean hasBatchJobs()
        Is the batch jobs defined?
        Returns:
        true if the batch jobs is defined; false otherwise.
      • getBatchJobs

        public java.util.List<EPPRegistryBatchJob> getBatchJobs()
        Get the List of EPPRegistryBatchJob that specifies the batch jobs.
        Returns:
        the List of EPPRegistryBatchJob that specifies the batch jobs
      • setBatchJobs

        public void setBatchJobs​(java.util.List<EPPRegistryBatchJob> aBatchJobs)
        Set the List of EPPRegistryBatchJob that includes all of the batch jobs.
        Parameters:
        aBatchJobs - the List of EPPRegistryBatchJob includes all of the batch jobs.
      • addBatchJob

        public void addBatchJob​(EPPRegistryBatchJob aBatchJob)
        Add a batch job to the list of batch jobs.
        Parameters:
        aBatchJob - Batch job to add to the list
      • hasSystemZones

        public boolean hasSystemZones()
        Is the system zones defined?
        Returns:
        true if the system zones is defined; false otherwise.
      • getSystemZones

        public java.util.List<EPPRegistryZoneName> getSystemZones()
        Get the List of EPPRegistryZoneName that specifies the system zones.
        Returns:
        the List of EPPRegistryZoneName that specifies the system zones
      • setSystemZones

        public void setSystemZones​(java.util.List<EPPRegistryZoneName> aSystemZones)
        Set the List of EPPRegistryZoneName that includes all of the system zones.
        Parameters:
        aSystemZones - the List of EPPRegistryBatchJob includes all of the batch jobs.
      • addSystemZone

        public void addSystemZone​(EPPRegistryZoneName aSystemZone)
        Add a zone to the list of system zones.
        Parameters:
        aSystemZone - Zone to add to the list of system zones
      • hasDomain

        public boolean hasDomain()
        Is the domain defined?
        Returns:
        true if the domain is defined; false otherwise.
      • getDomain

        public EPPRegistryDomain getDomain()
        Get the domain name object policy information.
        Returns:
        the domain name object policy information per RFC 5731
      • setDomain

        public void setDomain​(EPPRegistryDomain domain)
        Set the domain name object policy information.
        Parameters:
        domain - the domain name object policy information per RFC 5731
      • hasHost

        public boolean hasHost()
        Is the host defined?
        Returns:
        true if the host is defined; false otherwise.
      • getHost

        public EPPRegistryHost getHost()
        Get the host object policy information.
        Returns:
        the host object policy information per RFC 5732
      • setHost

        public void setHost​(EPPRegistryHost host)
        Set the host object policy information.
        Parameters:
        host - the host object policy information per RFC 5732
      • hasContact

        public boolean hasContact()
        Is the contact defined?
        Returns:
        true if the contact is defined; false otherwise.
      • getContact

        public EPPRegistryContact getContact()
        Get the contact object policy information.
        Returns:
        the contact object policy information per RFC 5733.
      • setContact

        public void setContact​(EPPRegistryContact contact)
        Set the contact object policy information.
        Parameters:
        contact - the contact object policy information per RFC 5733.
      • hasGroup

        public boolean hasGroup()
        Is the zone group defined?
        Returns:
        true if the zone group is defined; false otherwise.
      • getGroup

        public java.lang.String getGroup()
        Gets the zone group.
        Returns:
        server defined grouping of zones that the zone belongs to with similar features and policies
      • setGroup

        public void setGroup​(java.lang.String aGroup)
        Sets the zone group.
        Parameters:
        aGroup - server defined grouping of zones that the zone belongs to with similar features and policies
      • 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.