package gov.nist.javax.sip; import javax.sip.ClientTransaction; import javax.sip.Dialog; import javax.sip.ResponseEvent; import javax.sip.message.Response; /** * Extension for ResponseEvent. * * @since v2.0 */ public class ResponseEventExt extends ResponseEvent { private ClientTransactionExt m_originalTransaction; public ResponseEventExt(Object source, ClientTransactionExt clientTransaction, Dialog dialog, Response response) { super(source,clientTransaction,dialog,response); m_originalTransaction = clientTransaction; } /** * Return true if this is a forked response. * * @return true if the response event is for a forked response. */ public boolean isForkedResponse() { return super.getClientTransaction() == null && m_originalTransaction != null; } /** * Set the original transaction for a forked response. * * @param originalTransaction - the original transaction for which this response event is a fork. */ public void setOriginalTransaction(ClientTransactionExt originalTransaction ) { m_originalTransaction = originalTransaction; } /** * Get the original transaction for which this is a forked response. * Note that this transaction can be in a TERMINATED state. * * @return the original clientTx for which this is a forked response. */ public ClientTransactionExt getOriginalTransaction() { return this.m_originalTransaction; } }