Class EPPNameWatchTransferCmd

All Implemented Interfaces:
EPPCodecComponent, EPPMessage, Serializable, Cloneable

public class EPPNameWatchTransferCmd extends EPPTransferCmd
Represents an EPP NameWatch <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 <nameWatch:transfer> element that identifies the nameWatch namespace and the location of the nameWatch schema. The <nameWatch:transfer> element SHALL contain the following child elements:

  • A <nameWatch:name> element that contains the fully qualified nameWatch 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 <nameWatch:period> element that contains the initial registration period of the nameWatch 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 <nameWatch:authInfo> element that contains authorization information associated with the nameWatch object or authorization information associated with the nameWatch 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 nameWatch object MUST implicitly transfer all host objects that are subordinate to the nameWatch object. For example, if nameWatch 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 nameWatch object are listed in the response to an EPP <info> command performed on the nameWatch object.

EPPNameWatchTransferResp is the concrete EPPReponse associated with EPPNameWatchTransferCmd.

See Also:
  • Constructor Details

    • EPPNameWatchTransferCmd

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

      • roid is set to null
      • period is set to null
      • authInfo is set to to null

      The transaction ID, operation, and roid must be set before invoking encode.
    • EPPNameWatchTransferCmd

      public EPPNameWatchTransferCmd(String aTransId, String aOp, String aRoid)
      EPPNameWatchTransferCmd constructor that takes the required attributes as arguments. The period attribute is set to "0" 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.
      aRoid - NameWatch roid to create.
    • EPPNameWatchTransferCmd

      public EPPNameWatchTransferCmd(String aTransId, String aOp, String aRoid, EPPAuthInfo aAuthInfo)
      EPPNameWatchTransferCmd constructor that takes the required attributes as arguments. The period attribute is set to "0" 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.
      aRoid - NameWatch roid to create.
      aAuthInfo - Authorization Information for operating with the nameWatch.
    • EPPNameWatchTransferCmd

      public EPPNameWatchTransferCmd(String aTransId, String aOp, String aRoid, EPPAuthInfo aAuthInfo, EPPNameWatchPeriod aPeriod)
      EPPNameWatchTransferCmd 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.
      aRoid - NameWatch roid to create.
      aAuthInfo - Authorization Information for operating with the nameWatch.
      aPeriod - Registration period to be added to the nameWatch upon transfer.
  • Method Details

    • getNamespace

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

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

      protected Element doEncode(Document aDocument) throws EPPEncodeException
      Encode a DOM Element tree from the attributes of the EPPNameWatchTransferCmd 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 EPPNameWatchTransferCmd instance.
      Throws:
      EPPEncodeException - Unable to encode EPPNameWatchTransferCmd instance.
    • doDecode

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

      public String getRoid()
      Gets the nameWatch roid to query.
      Returns:
      NameWatch Roid
    • setRoid

      public void setRoid(String aRoid)
      Sets the nameWatch roid to query.
      Parameters:
      aRoid - NameWatch Roid
    • equals

      public boolean equals(Object aObject)
      Compare an instance of EPPNameWatchTransferCmd with this instance.
      Overrides:
      equals in class EPPTransferCmd
      Parameters:
      aObject - Object to compare with.
      Returns:
      DOCUMENT ME!
    • clone

      public Object clone() throws CloneNotSupportedException
      Clone EPPNameWatchTransferCmd.
      Specified by:
      clone in interface EPPCodecComponent
      Overrides:
      clone in class EPPTransferCmd
      Returns:
      clone of EPPNameWatchTransferCmd
      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:
      EPPAuthInfo if defined; null otherwise.
    • getPeriod

      public EPPNameWatchPeriod 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 - EPPAuthInfo
    • setPeriod

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