Skip to content
Permalink
1139b72d5e
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
69 lines (54 sloc) 1.28 KB
digraph G {
size = "10,10";
// default shape
node [shape=ellipse];
// show queues as boxes
"pending queue" [shape = box];
"service queue" [shape = box];
// show actions/functions as diamonds
"check consistency" [shape = diamond];
"create state structure" [shape = diamond];
"call service handler" [shape = diamond];
"find existing state structure" [shape = diamond];
"wait for jobs to complete" [shape = diamond];
"add to queue\n(if necessary)" [shape = diamond];
"remove from queue;\nrelease resources" [shape = diamond];
// describe the state machine
"wait for jobs to complete"
->
"Known job";
"wait for jobs to complete"
->
"Unexpected job";
"Known job"
->
"find existing state structure";
"Unexpected job"
->
"create state structure";
"create state structure"
->
"check consistency";
"check consistency"
->
"pending queue"
[label = "operation must wait"];
"check consistency"
->
"call service handler"
[label = "clear to begin"];
"find existing state structure"
->
"call service handler";
"call service handler"
->
"remove from queue;\nrelease resources"
[label = "completed"];
"call service handler"
->
"add to queue\n(if necessary)"
[label = "not completed"];
"add to queue\n(if necessary)"
->
"service queue";
}