113
edits
(on-demand sync state diagram) |
(State Diagram explanation) |
||
| Line 78: | Line 78: | ||
===== State Diagram ===== | ===== State Diagram ===== | ||
The finite state diagram below describes the sync states of a folder during on-demand sync. This is based on how auto-sync currently works, the notable differences are: | |||
# The SyncCompleted and SyncFailed '''end''' states. In auto-sync a folder is simply removed from the queue either because all of its messages have been downloaded or the number of retries was exceeded. | |||
# Substates are clearly defined. In auto-sync the substates ReadyToDiscover and ReadyToUpdate are inferred by a folder being in the Discover or Update queue respectively. In on-demand sync a folder's state will need to be explicitly defined either by a substate property or by a function that checks other attributes such as the state of internal queues. | |||
# Folders can only be in one state at a time. This is implied by the previous point. In auto-sync a folder can be in more than one queue at a time (I think), which as an implicit state breaks the FSM model. | |||
<small> | <small> | ||
edits