net.i2p.router.web
Class StatSummarizer

java.lang.Object
  extended by net.i2p.router.web.StatSummarizer
All Implemented Interfaces:
Runnable

public class StatSummarizer
extends Object
implements Runnable

A thread started by RouterConsoleRunner that checks the configuration for stats to be tracked via jrobin, and adds or deletes RRDs as necessary. This also contains methods to generate xml or png image output. The actual png rendering code is here for the special dual-rate graph; the rendering for standard graphs is in SummaryRenderer. To control memory, the number of simultaneous renderings is limited.

Since:
0.6.1.13

Constructor Summary
StatSummarizer()
           
 
Method Summary
(package private)  List<SummaryListener> getListeners()
          list of SummaryListener instances
 boolean getXML(Rate rate, OutputStream out)
           
static StatSummarizer instance()
           
(package private) static boolean isDisabled()
           
 boolean renderPng(OutputStream out, String templateFilename)
          Deprecated. unused
 boolean renderPng(Rate rate, OutputStream out)
           
 boolean renderPng(Rate rate, OutputStream out, int width, int height, boolean hideLegend, boolean hideGrid, boolean hideTitle, boolean showEvents, int periodCount, boolean showCredit)
          This does the single data graphs.
 boolean renderRatePng(OutputStream out, int width, int height, boolean hideLegend, boolean hideGrid, boolean hideTitle, boolean showEvents, int periodCount, boolean showCredit)
          This does the two-data bandwidth graph only.
 void run()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StatSummarizer

public StatSummarizer()
Method Detail

instance

public static StatSummarizer instance()

run

public void run()
Specified by:
run in interface Runnable

isDisabled

static boolean isDisabled()
Since:
0.8.7

getListeners

List<SummaryListener> getListeners()
list of SummaryListener instances


renderPng

public boolean renderPng(Rate rate,
                         OutputStream out)
                  throws IOException
Throws:
IOException

renderPng

public boolean renderPng(Rate rate,
                         OutputStream out,
                         int width,
                         int height,
                         boolean hideLegend,
                         boolean hideGrid,
                         boolean hideTitle,
                         boolean showEvents,
                         int periodCount,
                         boolean showCredit)
                  throws IOException
This does the single data graphs. For the two-data bandwidth graph see renderRatePng(). Synchronized to conserve memory.

Returns:
success
Throws:
IOException

renderPng

public boolean renderPng(OutputStream out,
                         String templateFilename)
                  throws IOException
Deprecated. unused

Throws:
IOException

getXML

public boolean getXML(Rate rate,
                      OutputStream out)
               throws IOException
Throws:
IOException

renderRatePng

public boolean renderRatePng(OutputStream out,
                             int width,
                             int height,
                             boolean hideLegend,
                             boolean hideGrid,
                             boolean hideTitle,
                             boolean showEvents,
                             int periodCount,
                             boolean showCredit)
                      throws IOException
This does the two-data bandwidth graph only. For all other graphs see SummaryRenderer Synchronized to conserve memory.

Returns:
success
Throws:
IOException