| 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; |
| } |
| |
| |
| } |