TimeoutEventpublic class TimeoutEvent extends SipEvent This class represents an Timeout event that is passed from a SipProvider to
its SipListener. A specific message may need retransmitted on a specific
transaction numerous times before it is acknowledged by the receiver. If the
message is not acknowledged after a specified period in the underlying
implementation the transaction will expire, this occurs usually
after seven retransmissions. The mechanism to alert an application that a
message for a an underlying transaction needs retransmitted (i.e. 200OK) or
an underlying transaction has expired is a Timeout Event.
A Timeout Event can be of two different types, namely:
- {@link Timeout#RETRANSMIT}
- {@link Timeout#TRANSACTION}
A TimeoutEvent contains the following information:
- source - the SipProvider that sent the TimeoutEvent.
- transaction - the transaction that this Timeout applies to.
- isServerTransaction - boolean indicating whether the
transaction refers to
a client or server transaction.
- timeout - indicates what type of {@link Timeout} occurred.
|
Fields Summary |
---|
private boolean | m_isServerTransactionFlag indicating server transaction. | private ServerTransaction | m_serverTransactionCurrent server transaction. | private ClientTransaction | m_clientTransactionCurrent client transaction. | private Timeout | m_timeoutCurrent transaction timeout. |
Constructors Summary |
---|
public TimeoutEvent(Object source, ServerTransaction serverTransaction)Constructs a TimeoutEvent to indicate a server retransmission
or transaction timeout.
super(source);
m_serverTransaction = serverTransaction;
m_isServerTransaction = true;
| public TimeoutEvent(Object source, ClientTransaction clientTransaction)Constructs a TimeoutEvent to indicate a
client retransmission or transaction
timeout.
super(source);
m_clientTransaction = clientTransaction;
m_isServerTransaction = false;
| public TimeoutEvent(Object source, ClientTransaction clientTransaction, Timeout timeout)Constructs a TimeoutEvent to indicate a client
retransmission or transaction timeout.
super(source);
m_clientTransaction = clientTransaction;
m_isServerTransaction = false;
m_timeout = timeout;
|
Methods Summary |
---|
public ClientTransaction | getClientTransaction()Gets the client transaction associated with this TimeoutEvent.
return m_clientTransaction;
| public ServerTransaction | getServerTransaction()Gets the server transaction associated with this TimeoutEvent.
return m_serverTransaction;
| public boolean | isServerTransaction()Indicates if the transaction associated with this TimeoutEvent
is a server transaction.
return m_isServerTransaction;
|
|