/[resiprocate]
ViewVC logotype

Revision 3999


Jump to revision: Previous Next
Author: derek
Date: Wed Mar 16 19:41:28 2005 UTC (14 years, 8 months ago)
Changed paths: 61
Log Message:
Merged in of async branch:

Major changes:

Alternative "async/external" Processing Model

The SipStack & DUM can now run w/out being in a build/select/process
loop.  This is accomplished witht ransports that provide their own cycles, as well
as an external timer api.  The SipStack is constructed w/ an
AsyncProcessHandler which gets notified when a message is put into the
StateMacFifo, or when SipStack::postMs or SipStack::post is called.  This can be
optimized a bit more; in some cases only a timer adjustment may be required, but
the stack might not require cycles.  DumProcessHandler, located in the Dum
directory, is a example of how to use this.  Note that it provides ares w/ a 50
ms timer when there is an active query.  DnsInterface now has a requiresProcess
method to facilitate this; it should possibly become another
getTimeTillNextProcess method.

Transport Refactoring/Cleanup

TransportSelector now only understands objects that derive from Transport.  The
SipStack is responsible for the Transport Factory behaviour of addTransport.  A
lot of the Transport has moved into InternalTransport, to keep the Transport
abstraction clean.  Also, the tcp transports have been cleaned up; most of dlb's
rant in ConnectionBase.hxx has been answered. 

IpVersion vs Bool IpV4

bool is no longer used to represnt IpVersion, the enum is used in tuple and
anywhere else I spotted it.

The result of this merge/cleanup has been regressed; I still need to re-write
testTransportSelector.cxx.  The async model has not been used yet with the
esult of this merge, but it was sued extensively in the branch.


Changed paths

Path Details
Directorymain/sip/resiprocate/ modified , props changed
Directorymain/sip/resiprocate/.cvsignore modified , text changed
Directorymain/sip/resiprocate/Connection.cxx modified , text changed
Directorymain/sip/resiprocate/Connection.hxx modified , text changed
Directorymain/sip/resiprocate/ConnectionBase.cxx added
Directorymain/sip/resiprocate/ConnectionBase.hxx added
Directorymain/sip/resiprocate/ConnectionManager.cxx modified , text changed
Directorymain/sip/resiprocate/ConnectionManager.hxx modified , text changed
Directorymain/sip/resiprocate/DnsInterface.cxx modified , text changed
Directorymain/sip/resiprocate/DnsInterface.hxx modified , text changed
Directorymain/sip/resiprocate/DnsResult.cxx modified , text changed
Directorymain/sip/resiprocate/DnsResult.hxx modified , text changed
Directorymain/sip/resiprocate/DtlsTransport.cxx modified , text changed
Directorymain/sip/resiprocate/DtlsTransport.hxx modified , text changed
Directorymain/sip/resiprocate/InternalTransport.cxx added
Directorymain/sip/resiprocate/InternalTransport.hxx added
Directorymain/sip/resiprocate/Makefile modified , text changed
Directorymain/sip/resiprocate/SendData.hxx added
Directorymain/sip/resiprocate/SipStack.cxx modified , text changed
Directorymain/sip/resiprocate/SipStack.hxx modified , text changed
Directorymain/sip/resiprocate/StackThread.cxx modified , text changed
Directorymain/sip/resiprocate/StackThread.hxx modified , text changed
Directorymain/sip/resiprocate/TcpBaseTransport.cxx modified , text changed
Directorymain/sip/resiprocate/TcpBaseTransport.hxx modified , text changed
Directorymain/sip/resiprocate/TlsTransport.cxx modified , text changed
Directorymain/sip/resiprocate/TlsTransport.hxx modified , text changed
Directorymain/sip/resiprocate/TransactionController.cxx modified , text changed
Directorymain/sip/resiprocate/TransactionController.hxx modified , text changed
Directorymain/sip/resiprocate/Transport.cxx modified , text changed
Directorymain/sip/resiprocate/Transport.hxx modified , text changed
Directorymain/sip/resiprocate/TransportSelector.cxx modified , text changed
Directorymain/sip/resiprocate/TransportSelector.hxx modified , text changed
Directorymain/sip/resiprocate/UdpTransport.cxx modified , text changed
Directorymain/sip/resiprocate/UdpTransport.hxx modified , text changed
Directorymain/sip/resiprocate/dum/ modified , props changed
Directorymain/sip/resiprocate/dum/.cvsignore modified , text changed
Directorymain/sip/resiprocate/dum/DialogUsageManager.cxx modified , text changed
Directorymain/sip/resiprocate/dum/DialogUsageManager.hxx modified , text changed
Directorymain/sip/resiprocate/dum/DumProcessHandler.cxx modified , text changed
Directorymain/sip/resiprocate/dum/DumProcessHandler.hxx modified , text changed
Directorymain/sip/resiprocate/dum/Makefile modified , text changed
Directorymain/sip/resiprocate/external/ExternalTimer.hxx added
Directorymain/sip/resiprocate/os/AsyncProcessHandler.hxx added
Directorymain/sip/resiprocate/os/Fifo.hxx modified , text changed
Directorymain/sip/resiprocate/os/Tuple.cxx modified , text changed
Directorymain/sip/resiprocate/os/Tuple.hxx modified , text changed
Directorymain/sip/resiprocate/resiprocate_7_1.vcproj modified , text changed
Directorymain/sip/resiprocate/test/ modified , props changed
Directorymain/sip/resiprocate/test/.cvsignore modified , text changed
Directorymain/sip/resiprocate/test/limpc.cxx modified , text changed
Directorymain/sip/resiprocate/test/testDns.cxx modified , text changed
Directorymain/sip/resiprocate/test/testMsgHeaderDiagram.cxx modified , text changed
Directorymain/sip/resiprocate/test/testRSP-2.cxx modified , text changed
Directorymain/sip/resiprocate/test/testSdp.cxx modified , text changed
Directorymain/sip/resiprocate/test/testSpeed.cxx modified , text changed
Directorymain/sip/resiprocate/test/testStack.cxx modified , text changed
Directorymain/sip/resiprocate/test/testTcp.cxx modified , text changed
Directorymain/sip/resiprocate/test/testThreadIf.cxx modified , text changed
Directorymain/sip/resiprocate/test/testTransportSelector.cxx modified , text changed
Directorymain/sip/resiprocate/test/testUdp.cxx modified , text changed
Directorymain/sip/resiprocate/test/test_7_1.vcproj modified , text changed

webmaster AT resiprocate DOT org
ViewVC Help
Powered by ViewVC 1.1.27