Class EPPDomainTransferCmd

All Implemented Interfaces:
EPPCodecComponent, EPPMessage, Serializable, Cloneable

public class EPPDomainTransferCmd extends EPPTransferCmd
Represents an EPP Domain <transfer> command. The EPP <transfer> command provides a query operation that allows a client to determine real-time status of pending and completed transfer requests. In addition to the standard EPP command elements, the <transfer> command MUST contain an op attribute with value query, and a <domain:transfer> element that identifies the domain namespace and the location of the domain schema. The <domain:transfer> element SHALL contain the following child elements:

  • A <domain:name> element that contains the fully qualified domain name of the object for which a transfer request is to be created, approved, rejected, or cancelled. Use getName and setName to get and set the element.
  • An OPTIONAL <domain:period> element that contains the initial registration period of the domain object. Use getPeriod and setPeriod to get and set the element. If return null, period has not been specified yet.
  • An "op" attribute that identifies the transfer operation to be performed. Valid values, definitions, and authorizations for all attribute values are defined in [EPP]. Use getOp and setOp to get and set the element. One of the EPPCommand.OP_ constants need to be specified.
  • A <domain:authInfo> element that contains authorization information associated with the domain object or authorization information associated with the domain object's registrant or associated contacts. This element is REQUIRED only when a transfer is requested, and it SHALL be ignored if used otherwise. Use getAuthInfo and setAuthInfo to get and set the element.


Transfer of a domain object MUST implicitly transfer all host objects that are subordinate to the domain object. For example, if domain object "example.com" is transferred and host object "ns1.example.com" exists, the host object MUST be transferred as part of the "example.com" transfer process. Host objects that are subject to transfer when transferring a domain object are listed in the response to an EPP <info> command performed on the domain object.

EPPDomainTransferResp is the concrete EPPReponse associated with EPPDomainTransferCmd.
See Also:
  • Field Details

  • Constructor Details

    • EPPDomainTransferCmd

      public EPPDomainTransferCmd()
      Allocates a new EPPDomainTransferCmd with default attribute values. the defaults include the following:

      • name is set to null
      • period is set to null
      • authInfo is set to to null

      The transaction ID, operation, name, and authInfo must be set before invoking encode.
    • EPPDomainTransferCmd

      public EPPDomainTransferCmd(String aTransId, String aOp, String aName)
      EPPDomainTransferCmd constructor that takes the required attributes as arguments. The period attribute is set to UNSPEC_PERIOD and will not be included when encode is invoked.
      Parameters:
      aTransId - Transaction Id associated with the command.
      aOp - One of the EPPCommand.OP_ constants associated with the transfer command.
      aName - Domain name to create.
    • EPPDomainTransferCmd

      public EPPDomainTransferCmd(String aTransId, String aOp, String aName, EPPAuthInfo aAuthInfo, EPPDomainPeriod aPeriod)
      EPPDomainTransferCmd constructor that takes the required attributes plus the optional attibute aPeriod.
      Parameters:
      aTransId - Transaction Id associated with the command.
      aOp - One of the EPPCommand.OP_ constants associated with the transfer command.
      aName - Domain name to create.
      aAuthInfo - Authorization Information for operating with the domain.
      aPeriod - Registration period to be added to the domain upon transfer.
  • Method Details

    • getNamespace

      public String getNamespace()
      Gets the EPP command Namespace associated with EPPDomainTransferCmd.
      Specified by:
      getNamespace in interface EPPCodecComponent
      Specified by:
      getNamespace in interface EPPMessage
      Specified by:
      getNamespace in class EPPCommand
      Returns:
      EPPDomainMapFactory.NS
    • getKey

      public String getKey()
      Gets the key for the domain name object, which is the domain name.
      Overrides:
      getKey in class EPPCommand
      Returns:
      The domain name if set; null otherwise.
    • doEncode

      protected Element doEncode(Document aDocument) throws EPPEncodeException
      Encode a DOM Element tree from the attributes of the EPPDomainTransferCmd instance.
      Specified by:
      doEncode in class EPPTransferCmd
      Parameters:
      aDocument - DOM Document that is being built. Used as an Element factory.
      Returns:
      Root DOM Element representing the EPPDomainTransferCmd instance.
      Throws:
      EPPEncodeException - Unable to encode EPPDomainTransferCmd instance.
    • doDecode

      protected void doDecode(Element aElement) throws EPPDecodeException
      Decode the EPPDomainTransferCmd attributes from the aElement DOM Element tree.
      Specified by:
      doDecode in class EPPTransferCmd
      Parameters:
      aElement - Root DOM Element to decode EPPDomainTransferCmd from.
      Throws:
      EPPDecodeException - Unable to decode aElement
    • getName

      public String getName()
      Gets the domain name to query.
      Returns:
      Domain Name if defined; null otherwise.
    • setName

      public void setName(String aName)
      Sets the domain name to query.
      Parameters:
      aName - Domain Name
    • equals

      public boolean equals(Object aObject)
      Compare an instance of EPPDomainTransferCmd with this instance.
      Overrides:
      equals in class EPPTransferCmd
      Parameters:
      aObject - Object to compare with.
      Returns:
      true when equal; false otherwise.
    • clone

      public Object clone() throws CloneNotSupportedException
      Clone EPPDomainTransferCmd.
      Specified by:
      clone in interface EPPCodecComponent
      Overrides:
      clone in class EPPTransferCmd
      Returns:
      clone of EPPDomainTransferCmd
      Throws:
      CloneNotSupportedException - standard Object.clone exception
    • 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 EPPCommand
      Returns:
      Indented XML String if successful; ERROR otherwise.
    • getAuthInfo

      public EPPAuthInfo getAuthInfo()
      Get authorization Information.
      Returns:
      com.verisign.epp.codec.domain.EPPAuthInfo
    • getPeriod

      public EPPDomainPeriod getPeriod()
      Gets the registration period of the transfer command in years.
      Returns:
      Registration Period in years if defined; null otherwise.
    • setAuthInfo

      public void setAuthInfo(EPPAuthInfo newAuthInfo)
      Set authorization information.
      Parameters:
      newAuthInfo - com.verisign.epp.codec.domain.EPPAuthInfo
    • setPeriod

      public void setPeriod(EPPDomainPeriod aPeriod)
      Sets the registration period of the transfer command.
      Parameters:
      aPeriod - Registration Period.