Use HTML::Mason caching to avoid repeated computation.
[irspy-moved-to-github.git] / web / htdocs / details / stats.mc
index 354cb54..fad2c11 100644 (file)
@@ -1,4 +1,4 @@
-%# $Id: stats.mc,v 1.1 2006-12-14 17:35:44 mike Exp $
+%# $Id: stats.mc,v 1.3 2006-12-15 14:37:03 mike Exp $
 <%doc>
 Here are the headings in the Z-Spy version:
        The ten most commonly supported Bib-1 Use attributes
@@ -18,7 +18,16 @@ records in order to find all the results, so we just take the path of
 least resistance and look at all the records by hand.
 </%doc>
 <%perl>
-my $stats = new ZOOM::IRSpy::Stats("localhost:3313/IR-Explain---1");
-use Data::Dumper;
-print "<pre>", xml_encode(Dumper($stats)), "</pre>\n";
+my $stats = $m->cache->get("stats");
+if (defined $stats) {
+    print "<h2>Reusing cached result</h2>\n";
+    print "stats=$stats\n";
+} else {
+    print "<h2>Recalculating stats</h2>\n";
+    $stats = new ZOOM::IRSpy::Stats("localhost:3313/IR-Explain---1");
+    $m->cache->set("stats", $stats, "1 minute");
+}
+print "<pre>";
+$stats->print();
+print "</pre>\n";
 </%perl>