com.verisign.epp.codec.nameWatch

## Class EPPNameWatchTransferCmd

- java.lang.Object
- - com.verisign.epp.codec.gen.EPPCommand
  - - com.verisign.epp.codec.gen.EPPTransferCmd
    - - com.verisign.epp.codec.nameWatch.EPPNameWatchTransferCmd

- All Implemented Interfaces:
    EPPCodecComponent, EPPMessage, java.io.Serializable, java.lang.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:
    `EPPNameWatchTransferResp`, Serialized Form

- - ### Field Summary

    - ### Fields inherited from class com.verisign.epp.codec.gen.EPPTransferCmd

      `op`

    - ### Fields inherited from class com.verisign.epp.codec.gen.EPPCommand

      `extensions, OP_APPROVE, OP_CANCEL, OP_QUERY, OP_REJECT, OP_REQUEST, transId, TYPE_CHECK, TYPE_CREATE, TYPE_DELETE, TYPE_INFO, TYPE_LOGIN, TYPE_LOGOUT, TYPE_POLL, TYPE_RENEW, TYPE_TRANSFER, TYPE_UPDATE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPNameWatchTransferCmd()` Allocates a new `EPPNameWatchTransferCmd` with default attribute values.
    `EPPNameWatchTransferCmd(java.lang.String aTransId, java.lang.String aOp, java.lang.String aRoid)` `EPPNameWatchTransferCmd` constructor that takes the required attributes as arguments.
    `EPPNameWatchTransferCmd(java.lang.String aTransId, java.lang.String aOp, java.lang.String aRoid, EPPAuthInfo aAuthInfo)` `EPPNameWatchTransferCmd` constructor that takes the required attributes as arguments.
    `EPPNameWatchTransferCmd(java.lang.String aTransId, java.lang.String aOp, java.lang.String aRoid, EPPAuthInfo aAuthInfo, EPPNameWatchPeriod aPeriod)` `EPPNameWatchTransferCmd` constructor that takes the required attributes plus the optional attibute `aPeriod`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()` Clone `EPPNameWatchTransferCmd`.
    `protected void` | `doDecode(org.w3c.dom.Element aElement)` Decode the `EPPNameWatchTransferCmd` attributes from the aElement DOM Element tree.
    `protected org.w3c.dom.Element` | `doEncode(org.w3c.dom.Document aDocument)` Encode a DOM Element tree from the attributes of the `EPPNameWatchTransferCmd` instance.
    `boolean` | `equals(java.lang.Object aObject)` Compare an instance of `EPPNameWatchTransferCmd` with this instance.
    `EPPAuthInfo` | `getAuthInfo()` Get authorization Information.
    `java.lang.String` | `getNamespace()` Gets the EPP command Namespace associated with `EPPNameWatchTransferCmd`.
    `EPPNameWatchPeriod` | `getPeriod()` Gets the registration period of the transfer command in years.
    `java.lang.String` | `getRoid()` Gets the nameWatch roid to query.
    `void` | `setAuthInfo(EPPAuthInfo newAuthInfo)` Set authorization information.
    `void` | `setPeriod(EPPNameWatchPeriod aPeriod)` Sets the registration period of the transfer command.
    `void` | `setRoid(java.lang.String aRoid)` Sets the nameWatch roid to query.
    `java.lang.String` | `toString()` Implementation of `Object.toString`, which will result in an indented XML `String` representation of the concrete `EPPCodecComponent`.

    - ### Methods inherited from class com.verisign.epp.codec.gen.EPPTransferCmd

      `doGenDecode, doGenEncode, getOp, getType, setOp`

    - ### Methods inherited from class com.verisign.epp.codec.gen.EPPCommand

      `addExtension, decode, encode, findDuplicateExtNamespaces, getExtension, getExtension, getExtensions, getTransId, hasExtension, hasExtensions, hasTransId, setExtension, setExtensions, setTransId`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### 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(java.lang.String aTransId,
                                         java.lang.String aOp,
                                         java.lang.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(java.lang.String aTransId,
                                         java.lang.String aOp,
                                         java.lang.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(java.lang.String aTransId,
                                         java.lang.String aOp,
                                         java.lang.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 Detail

    - #### getNamespace

          public java.lang.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`

    - #### doEncode

          protected org.w3c.dom.Element doEncode(org.w3c.dom.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(org.w3c.dom.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 java.lang.String getRoid()

      Gets the nameWatch roid to query.
      Returns:
        NameWatch Roid

    - #### setRoid

          public void setRoid(java.lang.String aRoid)

      Sets the nameWatch roid to query.
      Parameters:
        `aRoid` - NameWatch Roid

    - #### equals

          public boolean equals(java.lang.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 java.lang.Object clone()
                                 throws java.lang.CloneNotSupportedException

      Clone `EPPNameWatchTransferCmd`.
      Specified by:
        `clone` in interface `EPPCodecComponent`
      Overrides:
        `clone` in class `EPPTransferCmd`
      Returns:
        clone of `EPPNameWatchTransferCmd`
      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 `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.