1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
@startuml
title Activity diagram sbws results exclusion and aggregation (V3BWLine.from_results)
start
:success_results;
if (not success_results?) then (yes)
:return (, exclusion_reason);
stop
endif
:results_away;
if (not results_away?) then (yes)
:return (, exclusion_reason);
stop
endif
:results_recent;
if (not results_recent?) then (yes)
:return (, exclusion_reason);
stop
endif
if (node_id in router_statuses_d?) then (yes)
:consensus_bandwidth from router statuses;
else (no)
:consensus_bandwidth from results;
endif
:obs_last;
if (obs_last is None?) then (yes)
:return(cls(node_id, 1), "no_observed_bw");
stop
endif
:bw;
:kwargs[...];
:return (node_id, bw, **kwargs), None;
stop
@enduml
|