aboutsummaryrefslogtreecommitdiffstats
path: root/lib/MGA/Mirrors/Controller/Graph.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/MGA/Mirrors/Controller/Graph.pm')
-rw-r--r--lib/MGA/Mirrors/Controller/Graph.pm8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/MGA/Mirrors/Controller/Graph.pm b/lib/MGA/Mirrors/Controller/Graph.pm
index 5ca93cf..a2b6ad6 100644
--- a/lib/MGA/Mirrors/Controller/Graph.pm
+++ b/lib/MGA/Mirrors/Controller/Graph.pm
@@ -42,10 +42,16 @@ sub index :Path :Args(0) {
$graph->add_node($_, shape => 'box', cluster => $node{$_}{country});
}
}
- $graph->add_edge($from, $to);
+ # Minimum bandwidth of both nodes
+ my $bandwidth = ($node{$from}{bandwidth} < $node{$to}{bandwidth}) ? $node{$from}{bandwidth} : $node{$to}{bandwidth};
+ $bandwidth = 1 if (!$bandwidth);
+ my $thickness = log($bandwidth) / log(3) - 16; # Scale line thickness from bandwidth
+ $thickness = ($thickness < 1) ? 1 : $thickness;
+ $graph->add_edge($from => $to, penwidth => $thickness);
}
}
$c->stash->{graphviz}->{graph} = $graph;
+ $c->stash->{graphviz}->{format} = "svg";
}
sub end : Private {