:DNSClient
:D2UpdateMgr
Sequence depicting a
simple state model which
performs a single update.
As part of Update
Manager's sweep()
between events it
creates and starts the
transaction
runStateModel() Iterates through
states until DONE_ST is
reached
:NameChangeTransaction
At some point later, DNSClient
invokes callback when IO
completes
runStateModel() Iterates through
states until an update is initiated
doUpdate()
setState(READY_ST)
runStateModel(START_TRANSACTION_EVT)
startTransaction()
(getStateHandler())()
operator ()()
initStateHandlerMap()
setDnsUpdateStatus()
runStateModel(IO_COMPLETED_EVT)
NameChangeTransaction()
(getStateHandler)()
setNextEvent(NOP_EVT)
setState(DONE_ST)
setNextEvent(NOP_EVT)