Will Drewry | c45952f | 2013-09-03 13:51:24 -0500 | [diff] [blame] | 1 | /* This DOT file represents the logical interaction between |
| 2 | * the events in the system and the "state" of tlsdated. |
| 3 | */ |
| 4 | digraph tlsdated { |
| 5 | graph[compound=true]; |
| 6 | |
| 7 | node[style=filled,color=lightblue]; |
| 8 | |
| 9 | subgraph cluster_states { |
| 10 | state_label[shape=box,style=dashed,label="States"]; |
| 11 | sleep -> wake; |
| 12 | wake -> sync; |
| 13 | sync -> save; |
| 14 | save -> sleep; |
| 15 | wake -> terminate; |
| 16 | sync -> terminate; |
| 17 | save -> terminate; |
| 18 | } |
| 19 | |
| 20 | subgraph cluster_wake { |
| 21 | color=purple; |
| 22 | style=filled; |
| 23 | wake_label[shape=box,style=dashed,label="Wake Events"]; |
| 24 | periodic_local_clock_check -> wake; |
| 25 | periodic_network_sync -> wake; |
| 26 | random_sigterm -> wake; |
| 27 | random_route_change -> wake; |
| 28 | } |
| 29 | |
| 30 | subgraph cluster_dbus { |
| 31 | dbus_label[shape=box,style=dashed,label="DBus Events"]; |
| 32 | dbus-> cros_shill_manager_change -> wake; |
| 33 | dbus-> cros_shill_service_change -> wake; |
| 34 | dbus -> cros_proxy_resolved -> {proxy_ok, proxy_failed}; |
| 35 | dbus -> cros_user_set_time -> save; |
| 36 | cros_user_set_time -> sync [style=dotted]; |
| 37 | get_proxy -> cros_resolve_proxy -> dbus; |
| 38 | announce -> dbus; |
| 39 | } |
| 40 | |
| 41 | subgraph cluster_sync { |
| 42 | sync_label[shape=box,style=dashed,label="Network Sync"]; |
| 43 | sync -> get_proxy -> {proxy_ok, proxy_failed, proxy_timed_out} -> tlsdate; |
| 44 | tlsdate -> tlsdate_ok -> save; |
| 45 | tlsdate -> tlsdate_fail; |
| 46 | tlsdate_fail -> tlsdate [label="retry",style=dotted]; |
| 47 | tlsdate_fail -> terminate; |
| 48 | }; |
| 49 | |
| 50 | subgraph cluster_save { |
| 51 | save_label[shape=box,style=dashed,label="Save to the system"]; |
| 52 | save -> { synchronize_rtc, synchronize_kernel, synchronize_disk } -> { save_ok, save_fail, save_bad_time }; |
| 53 | save_ok -> announce -> sleep; |
| 54 | save_fail -> terminate; |
| 55 | save_bad_time -> sleep; |
| 56 | } |
| 57 | } |
| 58 | |