58 lines
1.7 KiB
Text
58 lines
1.7 KiB
Text
/* This DOT file represents the logical interaction between
|
|
* the events in the system and the "state" of tlsdated.
|
|
*/
|
|
digraph tlsdated {
|
|
graph[compound=true];
|
|
|
|
node[style=filled,color=lightblue];
|
|
|
|
subgraph cluster_states {
|
|
state_label[shape=box,style=dashed,label="States"];
|
|
sleep -> wake;
|
|
wake -> sync;
|
|
sync -> save;
|
|
save -> sleep;
|
|
wake -> terminate;
|
|
sync -> terminate;
|
|
save -> terminate;
|
|
}
|
|
|
|
subgraph cluster_wake {
|
|
color=purple;
|
|
style=filled;
|
|
wake_label[shape=box,style=dashed,label="Wake Events"];
|
|
periodic_local_clock_check -> wake;
|
|
periodic_network_sync -> wake;
|
|
random_sigterm -> wake;
|
|
random_route_change -> wake;
|
|
}
|
|
|
|
subgraph cluster_dbus {
|
|
dbus_label[shape=box,style=dashed,label="DBus Events"];
|
|
dbus-> cros_shill_manager_change -> wake;
|
|
dbus-> cros_shill_service_change -> wake;
|
|
dbus -> cros_proxy_resolved -> {proxy_ok, proxy_failed};
|
|
dbus -> cros_user_set_time -> save;
|
|
cros_user_set_time -> sync [style=dotted];
|
|
get_proxy -> cros_resolve_proxy -> dbus;
|
|
announce -> dbus;
|
|
}
|
|
|
|
subgraph cluster_sync {
|
|
sync_label[shape=box,style=dashed,label="Network Sync"];
|
|
sync -> get_proxy -> {proxy_ok, proxy_failed, proxy_timed_out} -> tlsdate;
|
|
tlsdate -> tlsdate_ok -> save;
|
|
tlsdate -> tlsdate_fail;
|
|
tlsdate_fail -> tlsdate [label="retry",style=dotted];
|
|
tlsdate_fail -> terminate;
|
|
};
|
|
|
|
subgraph cluster_save {
|
|
save_label[shape=box,style=dashed,label="Save to the system"];
|
|
save -> { synchronize_rtc, synchronize_kernel, synchronize_disk } -> { save_ok, save_fail, save_bad_time };
|
|
save_ok -> announce -> sleep;
|
|
save_fail -> terminate;
|
|
save_bad_time -> sleep;
|
|
}
|
|
}
|
|
|