Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.verisign.epp.codec.gen
Class EPPResponse

    java.lang.Object
      com.verisign.epp.codec.gen.EPPResponse

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

Direct Known Subclasses:
  EPPBalanceInfoResp, EPPContactCheckResp, EPPContactCreateResp, EPPContactInfoResp, EPPContactPendActionMsg, EPPContactTransferResp, EPPDefRegCheckResp, EPPDefRegCreateResp, EPPDefRegInfoResp, EPPDefRegRenewResp, EPPDefRegTransferResp, EPPDomainCheckResp, EPPDomainCreateResp, EPPDomainInfoResp, EPPDomainPendActionMsg, EPPDomainRenewResp, EPPDomainTransferResp, EPPEmailFwdCheckResp, EPPEmailFwdCreateResp, EPPEmailFwdInfoResp, EPPEmailFwdPendActionMsg, EPPEmailFwdRenewResp, EPPEmailFwdTransferResp, EPPHostCheckResp, EPPHostCreateResp, EPPHostInfoResp, EPPHostPendActionMsg, EPPIdnTableCheckResp, EPPIdnTableInfoResp, EPPLowBalancePollResponse, EPPNameWatchCreateResp, EPPNameWatchInfoResp, EPPNameWatchRenewResp, EPPNameWatchTransferResp, EPPRegistryCheckResp, EPPRegistryCreateResp, EPPRegistryInfoResp, EPPRegistryUpdateResp, EPPRgpPollResponse, EPPSuggestionInfoResp, EPPWhoWasInfoResp

    public class EPPResponse

extends java.lang.Object
implements EPPMessage

Represents an EPP response that is send by an EPP Server and received by an EPP Client. An `EPPResponse` can be encoded and decoded by `EPPCodec`. Every EPP response contain the following:

- transaction id - Mirror of the transaction id set in the associated `EPPCommand`
- results - One or more `EPPResult` instances.

`EPPResponse` is a concrete class that can be extended by the Command Mapping responses. A Command Mapping response must override the Template Design Pattern `doEncode` and `doDecode` methods. `EPPResponse` provides a default `doEncode` and `doDecode` implementation that does nothing. An `EPPResponse` client will call `encode` or `decode`, which in turn will call `doEncode` or `doDecode`, respectively.

See Also:
  Serialized Form

Field Summary
`protected java.util.Vector` | `extensions` Extension objects associated with the response.
`static java.lang.String` | `TRANSFER_CLIENT_APPROVED` Transfer status constant - clientApproved
`static java.lang.String` | `TRANSFER_CLIENT_CANCELLED` Transfer status constant - clientCancelled
`static java.lang.String` | `TRANSFER_CLIENT_REJECTED` Transfer status constant - clientRejected
`static java.lang.String` | `TRANSFER_PENDING` Transfer status constant - pending
`static java.lang.String` | `TRANSFER_SERVER_APPROVED` Transfer status constant - serverApproved
`static java.lang.String` | `TRANSFER_SERVER_CANCELLED` Transfer status constant - serverCancelled

Constructor Summary
`EPPResponse()` Allocates a new `EPPResponse` with default attribute values.
`EPPResponse(EPPTransId aTransId)` Allocates a new `EPPResponse` setting the transaction id.
`EPPResponse(EPPTransId aTransId, EPPResult aResult)` Allocates a new `EPPResponse` setting the transaction id and an individual result.

Method Summary
`void` | `addExtension(EPPCodecComponent aExtension)` Adds an extension object.
`java.lang.Object` | `clone()` Clone `EPPResponse`.
`void` | `decode(org.w3c.dom.Element aElement)` decode `EPPResponse` from a DOM element tree.
`protected void` | `doDecode(org.w3c.dom.Element aElement)` Decodes the attributes of the concrete `EPPResponse` and must be overridden by `EPPResponse` derived classes.
`protected org.w3c.dom.Element` | `doEncode(org.w3c.dom.Document aDocument)` Encodes the attributes of the concrete `EPPResponse` and must be overridden by `EPPResponse` derived classes.
`org.w3c.dom.Element` | `encode(org.w3c.dom.Document aDocument)` encode `EPPResponse` into a DOM element tree.
`boolean` | `equals(java.lang.Object aObject)` implements a deep `EPPResponse` compare.
`EPPCodecComponent` | `getExtension(java.lang.Class aExtensionClass)` Gets the extension object with the specified class.
`EPPCodecComponent` | `getExtension(java.lang.Class aExtensionClass, boolean aFailOnDuplicate)` Gets the response extension object with the specified class with the option to fail when a duplicate extension is found.
`java.util.Vector` | `getExtensions()` Gets the extensions.
`java.lang.Long` | `getMessageQueue()` Deprecated. As of EPP 1.0, replaced with `getMsgQueueCount()`
`EPPMsgQueue` | `getMsgQueue()` Gets the response message queue object.
`java.lang.Long` | `getMsgQueueCount()` Convenience method for getting the message queue count attribute.
`java.util.Date` | `getMsgQueueDate()` Convenience method for getting the message queue date attribute.
`java.lang.String` | `getMsgQueueMsg()` Convenience method for getting the message queue message attribute.
`java.lang.String` | `getNamespace()` Gets the EPP namespace associated with the `EPPResponse`.
`java.util.Date` | `getQDate()` Deprecated. As of EPP 1.0, replaced with `getMsgQueueDate()`
`EPPResult` | `getResult()` Gets the first result in the response.
`java.util.Vector` | `getResults()` Gets the Vector of results associated with the `EPPResponse`.
`EPPTransId` | `getTransId()` Gets the Transaction Id associated with the `EPPResponse`.
`java.lang.String` | `getType()` Gets the EPP response extension type name or `null` if there is no extension.
`boolean` | `hasExtension(java.lang.Class aExtensionClass)` Does the response have an extension object of a specified class?
`boolean` | `hasExtensions()` Does the response have an extension objects?
`boolean` | `hasMessageQueue()` Deprecated. As of EPP 1.0, replaced with `hasMsgQueue()`. This method will return `true` if a message queue object exists that has a non-`null` message count.
`boolean` | `hasMsgQueue()` Does the response have a message queue object?
`boolean` | `hasResultCode(int aCode)` Does the response have a result with the specified result code?
`boolean` | `isSuccess()` Does the response have a success status?
`void` | `setExtension(EPPCodecComponent aExtension)` Deprecated. Replaced by `addExtension(EPPCodecComponent)`. This method will add the extension as is done in `addExtension(EPPCodecComponent)`.
`void` | `setExtensions(java.util.Vector aExtensions)` Sets the response extension objects.
`void` | `setMsgQueue(EPPMsgQueue aMsgQueue)` Sets the response message queue object.
`void` | `setResult(EPPResult aResult)` Sets an individual result for the response with an `EPPResult` instance.
`void` | `setResult(int aCode)` Sets an individual result for the response with a result code.
`void` | `setResult(int aCode, java.lang.String aText)` Sets an individual result for the response with a result code and the result text.
`void` | `setResult(int aCode, java.lang.String aText, java.util.Vector aValues)` Sets an individual result for the response with a result code, the result text, and a Vector of `String` values.
`void` | `setResults(java.util.Vector someResults)` Sets the result(s) of the response as a Vector of `EPPResult` instances.
`void` | `setTransId(EPPTransId aTransId)` Sets the Transaction Id associated with the `EPPResponse`.
`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 java.lang.Object
`finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### TRANSFER_CLIENT_APPROVED

    public static final java.lang.String TRANSFER_CLIENT_APPROVED

  Transfer status constant - clientApproved

  See Also:
    Constant Field Values

### TRANSFER_CLIENT_CANCELLED

    public static final java.lang.String TRANSFER_CLIENT_CANCELLED

  Transfer status constant - clientCancelled

  See Also:
    Constant Field Values

### TRANSFER_CLIENT_REJECTED

    public static final java.lang.String TRANSFER_CLIENT_REJECTED

  Transfer status constant - clientRejected

  See Also:
    Constant Field Values

### TRANSFER_PENDING

    public static final java.lang.String TRANSFER_PENDING

  Transfer status constant - pending

  See Also:
    Constant Field Values

### TRANSFER_SERVER_APPROVED

    public static final java.lang.String TRANSFER_SERVER_APPROVED

  Transfer status constant - serverApproved

  See Also:
    Constant Field Values

### TRANSFER_SERVER_CANCELLED

    public static final java.lang.String TRANSFER_SERVER_CANCELLED

  Transfer status constant - serverCancelled

  See Also:
    Constant Field Values

### extensions

    protected java.util.Vector extensions

  Extension objects associated with the response. The extension object is associated with a unique XML Namespace, XML Schema, and can be any simple or complex object that implements the `EPPCodecComponent` interface.

Constructor Detail

### EPPResponse

    public EPPResponse()

  Allocates a new `EPPResponse` with default attribute values. The defaults include the following:
  - transaction id is set to `null`. This attribute must be set using `setTransId` before invoking `encode`.
  - extensions is set to `null`. This attribute is optional.
  - message queue is set to `null`. This attribute is optional.
  - results - Set to an individual successful result

### EPPResponse

    public EPPResponse(EPPTransId aTransId)

  Allocates a new `EPPResponse` setting the transaction id. The results attribute will default to an individual successful result. Both the extensions and the message queue will be set to `null`.

  Parameters:
    `aTransId` - Transaction id associated with the response.

### EPPResponse

    public EPPResponse(EPPTransId aTransId,
                       EPPResult aResult)

  Allocates a new `EPPResponse` setting the transaction id and an individual result. Both the extensions and the message queue will be set to `null`.

  Parameters:
    `aTransId` - Transaction id associated with the response.
    `aResult` - Result to associate with the response.

Method Detail

### getType

    public java.lang.String getType()

  Gets the EPP response extension type name or `null` if there is no extension.

  Returns:
    Extension type name if defined; `null` otherwise. For example, `getType` will return EPPDomainCheckResp.ELM_NAME for a EPPDomainCheckResp instance.

### getTransId

    public EPPTransId getTransId()

  Gets the Transaction Id associated with the `EPPResponse`. This should include the `EPPCommand` client specified transaction id, and a server generated transaction id.

  Returns:
    EPPTransId instance if defined; `null` otherwise.

### setTransId

    public void setTransId(EPPTransId aTransId)

  Sets the Transaction Id associated with the `EPPResponse`. This should include the `EPPCommand` client specified transaction id, and a server generated transaction id.

  Parameters:
    `aTransId` - Response transaction id

### getNamespace

    public java.lang.String getNamespace()

  Gets the EPP namespace associated with the `EPPResponse`. A base `EPPResponse` instance will have the EPP namespace equal to EPPCodec.NS.

  Specified by:
    `getNamespace` in interface `EPPMessage`
  Returns:
    Namespace URI associated with the EPPResponse.

### getResults

    public java.util.Vector getResults()

  Gets the Vector of results associated with the `EPPResponse`.

  Returns:
    Vector of `EPPResult` instances.

### getResult

    public EPPResult getResult()

  Gets the first result in the response. Use `getResults()` to get all results associated with the response.

  Returns:
    The first result if defined; `null` otherwise

### isSuccess

    public boolean isSuccess()

  Does the response have a success status? `isSuccess` will check that there is only one `EPPResult` defined and the result code is set to a value of 10??.

  Returns:
    `true` if is success; `false` otherwise.

### hasResultCode

    public boolean hasResultCode(int aCode)

  Does the response have a result with the specified result code?

  Parameters:
    `aCode` - Result code to scan for
  Returns:
    `true` if the result code exists in response; `false` otherwise.

### setResult

    public void setResult(int aCode)

  Sets an individual result for the response with a result code. The EPP Specification defines the range of the result codes to be 1000 - 9999.
  `setResult(int)` will set the results to a Vector of one `EPPResult` with the result code set to `aCode`.
  If the code is set to one of the pre-defined result codes, the result text will be set to the matching en value, as defined in the EPP Specification; otherwise the text is set to the empty string "".

  Parameters:
    `aCode` - Result code (1000-9999)

### setResult

    public void setResult(int aCode,
                          java.lang.String aText)

  Sets an individual result for the response with a result code and the result text. The EPP Specification defines the range of the result codes to be 1000 - 9999.
  `setResult(int)` will set the results to a Vector of one `EPPResult` with the result code set to `aCode`, and the result text set to `aText`. The language of the text will default to "en".

  Parameters:
    `aCode` - Result code (1000-9999)
    `aText` - Result text in the default "en" language.

### setResult

    public void setResult(int aCode,
                          java.lang.String aText,
                          java.util.Vector aValues)

  Sets an individual result for the response with a result code, the result text, and a Vector of `String` values. This method should only be called if there is an error, since values are not included with successful results. The EPP Specification defines the range of the result codes to be 1000 - 9999.
  `setResult(int)` will set the results to a Vector of one `EPPResult` with the result code set to `aCode`, the result text set to `aText`, and the values set to `someValues`. The language of the text will default to "en".

  Parameters:
    `aCode` - Result code (1000-9999)
    `aText` - Result text in the default "en" language.
    `aValues` - Vector of `EPPValue` or `EPPExtValue` instances

### setResult

    public void setResult(EPPResult aResult)

  Sets an individual result for the response with an `EPPResult` instance. This method allows for specification of result attributes like the text language.

  Parameters:
    `aResult` - Individual response result.

### setResults

    public void setResults(java.util.Vector someResults)

  Sets the result(s) of the response as a Vector of `EPPResult` instances. This method should only be used if there is an error, since only errors can contain more than one result.

  Parameters:
    `someResults` - Vector of `EPPResult` instances

### hasExtension

    public boolean hasExtension(java.lang.Class aExtensionClass)

  Does the response have an extension object of a specified class? If so, the extension object can be retrieved with a call to `getExtensions(Class)`.

  Parameters:
    `aExtensionClass` - Specific extension class to look for
  Returns:
    `true` if the extension object exists; `false` otherwise.

### getExtension

    public EPPCodecComponent getExtension(java.lang.Class aExtensionClass)

  Gets the extension object with the specified class. The extension object is an unspecified element in the EPP Specifications. To create an extension object, an XML Schema for the extension object must exist with a unique XML Namespace. A custom `EPPExtensionFactory` must be created for the extension, which returns an instance of `EPPCodecComponent` for an instance of an extension object in the EPP Response.

  Parameters:
    `aExtensionClass` - of desired extension
  Returns:
    Concrete `EPPCodecComponent` associated with the response if exists; `null` otherwise.

### getExtension

    public EPPCodecComponent getExtension(java.lang.Class aExtensionClass,
                                          boolean aFailOnDuplicate)
                                   throws EPPDuplicateExtensionException

  Gets the response extension object with the specified class with the option to fail when a duplicate extension is found. The extension object is an unspecified element in the EPP Specifications. To create an extension object, an XML Schema for the extension object must exist with a unique XML Namespace. A custom `EPPExtensionFactory` must be created for the extension, which returns an instance of `EPPCodecComponent` for an instance of an extension object in the `EPPResponse`.

  Parameters:
    `aExtensionClass` - `Class` of desired extension
    `aFailOnDuplicate` - Throw `EPPDuplicateExtensionException` if `true` and a duplicate extension is found
  Returns:
    Concrete `EPPCodecComponent` associated with the command if exists; `null` otherwise.
  Throws:
    `EPPDuplicateExtensionException` - If a duplicate extension is found with the extension included in the extension

### setExtension

    public void setExtension(EPPCodecComponent aExtension)

  Deprecated. Replaced by `addExtension(EPPCodecComponent)`. This method will add the extension as is done in `addExtension(EPPCodecComponent)`.

  Sets a response extension object. The extension object is an unspecified element in the EPP Specifications. The unspecified element will be encoded under the <unspec> element of the EPP Response.

  Parameters:
    `aExtension` - response extension object associated with the response

### addExtension

    public void addExtension(EPPCodecComponent aExtension)

  Adds an extension object. The extension object is an unspecified element in the EPP Specifications. The unspecified element will be encoded under the <unspec> element of the EPP Response.

  Parameters:
    `aExtension` - extension object associated with the response

### hasExtensions

    public boolean hasExtensions()

  Does the response have an extension objects? If so, the command extension objects can be retrieved with a call to `getExtensions`.

  Returns:
    `true` if there are extension objects; `false` otherwise.

### getExtensions

    public java.util.Vector getExtensions()

  Gets the extensions. The extension objects are an unspecified elements in the EPP Specification. To create an extension object, an XML Schema for the extension object must exist with a unique XML Namespace. A custom `EPPExtensionFactory` must be created for the extension, which returns an instance of `EPPCodecComponent` for an instance of an extension object in the EPP Response.

  Returns:
    `Vector` of concrete `EPPCodecComponent` associated with the response if exists; `null` otherwise.

### setExtensions

    public void setExtensions(java.util.Vector aExtensions)

  Sets the response extension objects. The extension objects are an unspecified element in the EPP Specifications. The unspecified element will be encoded under the <unspec> element of the EPP Response.

  Parameters:
    `aExtensions` - command extension objects associated with the command

### hasMessageQueue

    public boolean hasMessageQueue()

  Deprecated. As of EPP 1.0, replaced with `hasMsgQueue()`. This method will return `true` if a message queue object exists that has a non-`null` message count.

  Does the response have a message queue object? If so, the response message queue object can be retrieved with a call to `getMessageQueue`.

  Returns:
    `true` if this is an message queue object; `false` otherwise.

### getMessageQueue

    public java.lang.Long getMessageQueue()

  Deprecated. As of EPP 1.0, replaced with `getMsgQueueCount()`

  Gets the response message queue object. Currently the message queue object is a `Long` count of the number of messages.

  Returns:
    Number of queue messages if defined; `null` otherwise.

### getQDate

    public java.util.Date getQDate()

  Deprecated. As of EPP 1.0, replaced with `getMsgQueueDate()`

  Get the response message queue date.

  Returns:
    message queue date if defined; `null` otherwise.

### hasMsgQueue

    public boolean hasMsgQueue()

  Does the response have a message queue object? If so, the response message queue object can be retrieved with a call to `getMsgQueue`.

  Returns:
    `true` if this is an message queue object; `false` otherwise.
  Since:
    EPP 1.0

### setMsgQueue

    public void setMsgQueue(EPPMsgQueue aMsgQueue)

  Sets the response message queue object.

  Parameters:
    `aMsgQueue` - queue object
  Since:
    EPP 1.0

### getMsgQueue

    public EPPMsgQueue getMsgQueue()

  Gets the response message queue object.

  Returns:
    Message queue object if defined; `null` otherwise.

### getMsgQueueCount

    public java.lang.Long getMsgQueueCount()

  Convenience method for getting the message queue count attribute. This is equivalent to getting the message queue object by `getMsgQueue()` and than calling `EPPMsgQueue.getCount()`.

  Returns:
    Count of queue messages if defined; `null` otherwise.
  Since:
    EPP 1.0

### getMsgQueueDate

    public java.util.Date getMsgQueueDate()

  Convenience method for getting the message queue date attribute.

  Returns:
    message queue date if defined; `null` otherwise.
  Since:
    EPP 1.0

### getMsgQueueMsg

    public java.lang.String getMsgQueueMsg()

  Convenience method for getting the message queue message attribute.

  Returns:
    message queue message if defined; `null` otherwise.
  Since:
    EPP 1.0

### encode

    public org.w3c.dom.Element encode(org.w3c.dom.Document aDocument)
                               throws EPPEncodeException

  encode `EPPResponse` into a DOM element tree. The <response> element is created and the attribute nodes are appending as children. This method is a Template Method in the Template Method Design Pattern.

  Specified by:
    `encode` in interface `EPPCodecComponent`
  Parameters:
    `aDocument` - Used as a document factory
  Returns:
    <response> root element tree.
  Throws:
    `EPPEncodeException` - Error encoding the DOM element tree.

### decode

    public void decode(org.w3c.dom.Element aElement)
                throws EPPDecodeException,
                       EPPComponentNotFoundException

  decode `EPPResponse` from a DOM element tree. The "response" element needs to be the value of the `aElement` argument. This method is a Template Method in the Template Method Design Pattern.

  Specified by:
    `decode` in interface `EPPCodecComponent`
  Parameters:
    `aElement` - <response> root element tree.
  Throws:
    `EPPDecodeException` - Error decoding the DOM element tree.
    `EPPComponentNotFoundException` - An extension component could not be found

### equals

    public boolean equals(java.lang.Object aObject)

  implements a deep `EPPResponse` compare.

  Overrides:
    `equals` in class `java.lang.Object`
  Parameters:
    `aObject` - `EPPResponse` instance to compare with
  Returns:
    `true` if equal; `false` otherwise

### clone

    public java.lang.Object clone()
                           throws java.lang.CloneNotSupportedException

  Clone `EPPResponse`.

  Specified by:
    `clone` in interface `EPPCodecComponent`
  Overrides:
    `clone` in class `java.lang.Object`
  Returns:
    clone of `EPPResponse`
  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.

### doEncode

    protected org.w3c.dom.Element doEncode(org.w3c.dom.Document aDocument)
                                    throws EPPEncodeException

  Encodes the attributes of the concrete `EPPResponse` and must be overridden by `EPPResponse` derived classes. The default implementation is to do nothing, since `EPPResponse` is a concrete class. `encode` is a Template Method and this method is a Primitive Operation within the Template Method Design Pattern.

  Parameters:
    `aDocument` - DOM document used as a factory of DOM objects.
  Returns:
    instance root DOM element along with attribute child nodes.
  Throws:
    `EPPEncodeException` - Error encoding the DOM element tree.

### doDecode

    protected void doDecode(org.w3c.dom.Element aElement)
                     throws EPPDecodeException

  Decodes the attributes of the concrete `EPPResponse` and must be overridden by `EPPResponse` derived classes. The default implementation is to do nothing, since `EPPResponse` is a concrete class. `decode` is a Template Method and this method is a Primitive Operation within the Template Method Design Pattern.

  Parameters:
    `aElement` - root DOM element associated with instance
  Throws:
    `EPPDecodeException` - Error decoding the DOM element tree.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © VeriSign Inc. All Rights Reserved.