JSIP API v1.2
November 2006

javax.sip
Class ResponseEvent

java.lang.Object
  extended by java.util.EventObject
      extended by javax.sip.ResponseEvent
All Implemented Interfaces:
java.io.Serializable

public class ResponseEvent
extends java.util.EventObject

This class represents a Response event that is passed from a SipProvider to its SipListener. This specification handles the passing of Response messages to the application with the event model. An application (SipListener) registers with the SIP protocol stack (SipProvider) and listens for Response events from the SipProvider.

This specification defines a single Response event object to handle all Response messages. The Response event encapsulates the Response message that can be retrieved from getResponse(). Therefore the event type of a Response event can be determined as follows:

eventType == ResponseEvent.getResponse().getStatusCode();

A Response event also encapsulates the client transaction upon which the Response is correlated, i.e. the client transaction of the Request message upon which this is a Response.

ResponseEvent contains the following elements:

Author:
BEA Systems, NIST
See Also:
Serialized Form

Field Summary
 
Fields inherited from class java.util.EventObject
source
 
Constructor Summary
ResponseEvent(java.lang.Object source, ClientTransaction clientTransaction, Dialog dialog, Response response)
          Constructs a ResponseEvent encapsulating the Response that has been received by the underlying SipProvider.
 
Method Summary
 ClientTransaction getClientTransaction()
          Gets the client transaction associated with this ResponseEvent
 Dialog getDialog()
          Gets the Dialog associated with the event or null if no dialog exists.
 Response getResponse()
          Gets the Response message encapsulated in this ResponseEvent.
 
Methods inherited from class java.util.EventObject
getSource, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ResponseEvent

public ResponseEvent(java.lang.Object source,
                     ClientTransaction clientTransaction,
                     Dialog dialog,
                     Response response)
Constructs a ResponseEvent encapsulating the Response that has been received by the underlying SipProvider. This ResponseEvent once created is passed to SipListener.processResponse(ResponseEvent) method of the SipListener for application processing.

Parameters:
source - - the source of ResponseEvent i.e. the SipProvider
clientTransaction - - client transaction upon which this Response was sent
response - - the Response message received by the SipProvider
Method Detail

getClientTransaction

public ClientTransaction getClientTransaction()
Gets the client transaction associated with this ResponseEvent

Returns:
client transaction associated with this ResponseEvent

getResponse

public Response getResponse()
Gets the Response message encapsulated in this ResponseEvent.

Returns:
the response associated with this ResponseEvent.

getDialog

public Dialog getDialog()
Gets the Dialog associated with the event or null if no dialog exists. This method separates transaction support from dialog support. This enables application developers to access the dialog associated to this event without having to query the transaction associated to the event. For example the transaction associated with the event may return 'null' because the final response for the transaction has already been received and the stack has no more record of the transaction. This situation can occur when a UAC sends requests out through a forking proxy. Responses that all refer to the same transaction may be sent by the targets of the fork but each response may be stamped with a different To tag, thus referring to different Dialogs on the UAC. The first final response terminates the transaction but the UAC may want to create a Dialog on a subsequent response.

Returns:
the dialog associated with the response event or null if there is no dialog.
Since:
v1.2

JSIP API v1.2
November 2006

If you have any comments, please mail them to JAIN-SIP-INTEREST@java.sun.com after subscribing at http://archives.java.sun.com
Copyright - 2006 BEA Systems and Sun Microsystems