SIPTransaction Class Reference

#include <sippdu.h>

Inheritance diagram for SIPTransaction:

SIP_PDU SIPInvite SIPMessage SIPNotify SIPOptions SIPPing SIPPublish SIPRefer SIPReferNotify SIPRegister SIPSubscribe

Public Member Functions

 SIPTransaction (Methods method, SIPEndPoint &endpoint, OpalTransport &transport)
 SIPTransaction (Methods method, SIPConnection &connection)
 ~SIPTransaction ()
PBoolean Start ()
bool IsTrying () const
bool IsProceeding () const
bool IsInProgress () const
bool IsFailed () const
bool IsCompleted () const
bool IsCanceled () const
bool IsTerminated () const
void WaitForTermination ()
PBoolean Cancel ()
void Abort ()
virtual PBoolean OnReceivedResponse (SIP_PDU &response)
virtual PBoolean OnCompleted (SIP_PDU &response)
OpalTransportGetTransport () const
SIPConnectionGetConnection () const
PString GetInterface () const

Static Public Member Functions

static PString GenerateCallID ()

Protected Types

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

Protected Member Functions

bool SendPDU (SIP_PDU &pdu)
bool ResendCANCEL ()
void SetParameters (const SIPParameters &params)
void SetContact (const SIPURL &uri)
 PDECLARE_NOTIFIER (PTimer, SIPTransaction, OnRetry)
 PDECLARE_NOTIFIER (PTimer, SIPTransaction, OnTimeout)
virtual void SetTerminated (States newState)

Protected Attributes

SIPEndPointm_endpoint
OpalTransportm_transport
PSafePtr< SIPConnectionm_connection
PTimeInterval m_retryTimeoutMin
PTimeInterval m_retryTimeoutMax
States m_state
unsigned m_retry
PTimer m_retryTimer
PTimer m_completionTimer
PSyncPoint m_terminated
PString m_localInterface
OpalTransportAddress m_remoteAddress

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 
Terminated_Aborted 
NumStates 


Constructor & Destructor Documentation

SIPTransaction::SIPTransaction ( Methods  method,
SIPEndPoint endpoint,
OpalTransport transport 
)

SIPTransaction::SIPTransaction ( Methods  method,
SIPConnection connection 
)

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

SIPTransaction::~SIPTransaction (  ) 


Member Function Documentation

void SIPTransaction::Abort (  ) 

PBoolean SIPTransaction::Cancel (  ) 

static PString SIPTransaction::GenerateCallID (  )  [static]

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

PString SIPTransaction::GetInterface (  )  const [inline]

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

bool SIPTransaction::IsCanceled (  )  const [inline]

bool SIPTransaction::IsCompleted (  )  const [inline]

bool SIPTransaction::IsFailed (  )  const [inline]

bool SIPTransaction::IsInProgress (  )  const [inline]

bool SIPTransaction::IsProceeding (  )  const [inline]

bool SIPTransaction::IsTerminated (  )  const [inline]

bool SIPTransaction::IsTrying (  )  const [inline]

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

virtual PBoolean 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::SendPDU ( SIP_PDU pdu  )  [protected]

void SIPTransaction::SetContact ( const SIPURL uri  )  [protected]

void SIPTransaction::SetParameters ( const SIPParameters params  )  [protected]

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

PBoolean SIPTransaction::Start (  ) 

void SIPTransaction::WaitForTermination (  ) 


Field Documentation

PTimer SIPTransaction::m_completionTimer [protected]

PSafePtr<SIPConnection> SIPTransaction::m_connection [protected]

SIPEndPoint& SIPTransaction::m_endpoint [protected]

PString SIPTransaction::m_localInterface [protected]

OpalTransportAddress SIPTransaction::m_remoteAddress [protected]

unsigned SIPTransaction::m_retry [protected]

PTimeInterval SIPTransaction::m_retryTimeoutMax [protected]

PTimeInterval SIPTransaction::m_retryTimeoutMin [protected]

PTimer SIPTransaction::m_retryTimer [protected]

States SIPTransaction::m_state [protected]

PSyncPoint SIPTransaction::m_terminated [protected]

OpalTransport& SIPTransaction::m_transport [protected]


The documentation for this class was generated from the following file:
Generated on Mon Feb 21 20:19:25 2011 for OPAL by  doxygen 1.4.7