simpleCommunicator¶
This machine manages communications using a “stop and wait” protocol. Only one message is allowed to be outstanding.
Number of events: |
3 |
Events not handled: |
0 |
Events handled in one state: |
1 |
At least one event handled the same in all states? |
yes |
Number of states: |
2 |
Number of states with entry functions: |
0 |
Number of states with exit functions: |
0 |
States handling no events: |
0 |
States handling exactly one event: |
0 |
States with no way in: |
0 |
States with no way out: |
0 |
transition: AWAITING_ACK
|
|||
transition: IDLE
|
Events¶
SEND_MESSAGE¶
These states handle this event:
This yields a state density of 100%.
These actions are taken in response to this event:
NEVER_SEEN¶
This event is handled identically in all states.
These states handle this event:
This yields a state density of 100%.
These actions are taken in response to this event:
ACK¶
This event is handled identically in 1 states.
These states handle this event:
This yields a state density of 50%.
These actions are taken in response to this event:
States¶
IDLE¶
These events are handled in this state:
This yields an event density of 66%.
These actions are taken in this state:
These states transition into this state:
This state transitions into these states:
AWAITING_ACK¶
These events are handled in this state:
This yields an event density of 100%.
These actions are taken in this state:
These states transition into this state:
This state transitions into these states:
Actions¶
neverExecuted¶
sendMessage¶
sendMessage sends a message from the queue. The message is expected to be there, since checkQueue will have been previously called.
This action returns:
noEvent
queueMessage¶
queueMessage adds a message to the queue
This action returns:
noEvent
checkQueue¶
checkQueue only checks; it does not dequeue; that is done by sendMessage.
Return SEND_MESSAGE when the queue is not empty.
This action returns:
noEvent