SIPTransaction Class Reference

#include <sippdu.h>

Inheritance diagram for SIPTransaction:

SIP_PDU SIPInvite SIPMessage SIPMWISubscribe SIPOptions SIPRefer SIPReferNotify SIPRegister List of all members.

Public Member Functions

 SIPTransaction (SIPEndPoint &endpoint, OpalTransport &transport)
 SIPTransaction (SIPConnection &connection, OpalTransport &transport, Methods method=NumMethods)
 ~SIPTransaction ()
BOOL Start ()
BOOL IsInProgress () const
BOOL IsFailed () const
BOOL IsFinished ()
void Wait ()
BOOL SendCANCEL ()
virtual BOOL OnReceivedResponse (SIP_PDU &response)
virtual BOOL OnCompleted (SIP_PDU &response)
OpalTransportGetTransport () const
SIPConnectionGetConnection () const
const OpalTransportAddressGetLocalAddress () const

Protected Types

 NotStarted
 Trying
 Proceeding
 Cancelling
 Completed
 Terminated_Success
 Terminated_Timeout
 Terminated_RetriesExceeded
 Terminated_TransportError
 Terminated_Cancelled
 NumStates
enum  States {
  NotStarted, Trying, Proceeding, Cancelling,
  Completed, Terminated_Success, Terminated_Timeout, Terminated_RetriesExceeded,
  Terminated_TransportError, Terminated_Cancelled, NumStates
}

Protected Member Functions

void Construct ()
BOOL ResendCANCEL ()
 PDECLARE_NOTIFIER (PTimer, SIPTransaction, OnRetry)
 PDECLARE_NOTIFIER (PTimer, SIPTransaction, OnTimeout)
void SetTerminated (States newState)

Protected Attributes

SIPEndPointendpoint
OpalTransporttransport
SIPConnectionconnection
States state
unsigned retry
PTimer retryTimer
PTimer completionTimer
PSyncPoint finished
PTimedMutex mutex
OpalTransportAddress localAddress

Detailed Description

Session Initiation Protocol transaction. A transaction is a stateful independent entity that provides services to a connection (Transaction User). Transactions are contained within connections. A client transaction handles sending a request and receiving its responses. A server transaction handles sending responses to a received request. In either case the SIP_PDU ancestor is the sent or received request.


Member Enumeration Documentation

enum SIPTransaction::States [protected]

Enumerator:
NotStarted 
Trying 
Proceeding 
Cancelling 
Completed 
Terminated_Success 
Terminated_Timeout 
Terminated_RetriesExceeded 
Terminated_TransportError 
Terminated_Cancelled 
NumStates 


Constructor & Destructor Documentation

SIPTransaction::SIPTransaction ( SIPEndPoint endpoint,
OpalTransport transport 
)

SIPTransaction::SIPTransaction ( SIPConnection connection,
OpalTransport transport,
Methods  method = NumMethods 
)

Construct a transaction for requests in a dialog. The transport is used to determine the local address

SIPTransaction::~SIPTransaction (  ) 


Member Function Documentation

void SIPTransaction::Construct (  )  [protected]

SIPConnection* SIPTransaction::GetConnection (  )  const [inline]

const OpalTransportAddress& SIPTransaction::GetLocalAddress (  )  const [inline]

OpalTransport& SIPTransaction::GetTransport (  )  const [inline]

BOOL SIPTransaction::IsFailed (  )  const [inline]

BOOL SIPTransaction::IsFinished (  )  [inline]

BOOL SIPTransaction::IsInProgress (  )  const [inline]

virtual BOOL SIPTransaction::OnCompleted ( SIP_PDU response  )  [virtual]

virtual BOOL SIPTransaction::OnReceivedResponse ( SIP_PDU response  )  [virtual]

Reimplemented in SIPInvite.

SIPTransaction::PDECLARE_NOTIFIER ( PTimer  ,
SIPTransaction  ,
OnTimeout   
) [protected]

SIPTransaction::PDECLARE_NOTIFIER ( PTimer  ,
SIPTransaction  ,
OnRetry   
) [protected]

BOOL SIPTransaction::ResendCANCEL (  )  [protected]

BOOL SIPTransaction::SendCANCEL (  ) 

void SIPTransaction::SetTerminated ( States  newState  )  [protected]

BOOL SIPTransaction::Start (  ) 

void SIPTransaction::Wait (  ) 


Member Data Documentation

PTimer SIPTransaction::completionTimer [protected]

SIPConnection* SIPTransaction::connection [protected]

SIPEndPoint& SIPTransaction::endpoint [protected]

PSyncPoint SIPTransaction::finished [protected]

OpalTransportAddress SIPTransaction::localAddress [protected]

PTimedMutex SIPTransaction::mutex [protected]

unsigned SIPTransaction::retry [protected]

PTimer SIPTransaction::retryTimer [protected]

States SIPTransaction::state [protected]

OpalTransport& SIPTransaction::transport [protected]


The documentation for this class was generated from the following file:
Generated on Mon Sep 25 16:21:54 2006 for OPAL by  doxygen 1.4.7