All Downloads are FREE. Search and download functionalities are using the official Maven repository.

sip.RequestEvent Maven / Gradle / Ivy

/**
 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 * Unpublished - rights reserved under the Copyright Laws of the United States.
 * Copyright ? 2003 Sun Microsystems, Inc. All rights reserved.
 * Copyright ? 2005 BEA Systems, Inc. All rights reserved.
 *
 * Use is subject to license terms.
 *
 * This distribution may include materials developed by third parties.
 *
 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 *
 * Module Name   : JSIP Specification
 * File Name     : RequestEvent.java
 * Author        : Phelim O'Doherty
 *
 *  HISTORY
 *  Version   Date      Author              Comments
 *  1.1     08/10/2002  Phelim O'Doherty    Initial version
 *  1.2     02/15/2005  M. Ranganathan      getDialog get the current
 *                                          dialog.
 *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 */
package javax.sip;

import java.util.*;
import javax.sip.message.Request;

/**
 * This class represents an Request event that is passed from a SipProvider to
 * its SipListener. This specification handles the passing of request messages to the
 * application use the event model. An application (SipListener) will register
 * with the SIP protocol stack (SipProvider) and listen for Request events
 * from the SipProvider.
 * 

* This specification defines a single Request event object to handle all Request * messages. The Request event encapsulates the Request message that can be * retrieved from {@link RequestEvent#getRequest()}. Therefore the event type * of a Request event can be determined as follows: *

* eventType == RequestEvent.getRequest().getMethod(); *

* A Request event also encapsulates the server transaction which handles the * Request. *

* RequestEvent contains the following elements: *

    *
  • source - the source of the event i.e. the SipProvider sending the * RequestEvent *
  • serverTransaction - the server transaction this RequestEvent is * associated with. *
  • Request - the Request message received on the SipProvider * that needs passed to the application encapsulated in a RequestEvent. *
* * @author BEA Systems, NIST * @version 1.2 */ public class RequestEvent extends EventObject { /** * Constructs a RequestEvent encapsulating the Request that has been received * by the underlying SipProvider. This RequestEvent once created is passed to * {@link javax.sip.SipListener#processRequest(RequestEvent)} method of the SipListener * for application processing. * * @param source - the source of ResponseEvent i.e. the SipProvider * @param serverTransaction - server transaction upon which * this Request was sent * @param request - the Request message received by the SipProvider */ public RequestEvent(Object source, ServerTransaction serverTransaction, Dialog dialog, Request request) { super(source); m_transaction = serverTransaction; m_request = request; m_dialog = dialog; } /** * Gets the server transaction associated with this RequestEvent * * @return the server transaction associated with this RequestEvent */ public ServerTransaction getServerTransaction(){ return m_transaction; } /** * Gets the Request message associated with this RequestEvent. * * @return the message associated with this RequestEvent. */ public Request getRequest() { return m_request; } /** * Gets the dialog with which this Event is associated. * 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. * * @return the dialog with which the RequestEvent is associated or null if * no dialog exists. * @since v1.2 */ public Dialog getDialog() { return m_dialog; } // internal variables private Request m_request; private ServerTransaction m_transaction; private Dialog m_dialog; }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy