package nl.topicus.onderwijs.dashboard.plotsources; import java.util.List; import nl.topicus.onderwijs.dashboard.datasources.AverageRequestTime; import nl.topicus.onderwijs.dashboard.modules.PlotSource; import nl.topicus.onderwijs.dashboard.modules.plots.DataSourcePlotSeries; import nl.topicus.onderwijs.dashboard.modules.plots.PlotService; import nl.topicus.wqplot.components.JQPlot; import nl.topicus.wqplot.options.PlotOptions; import org.apache.wicket.model.util.ListModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class AverageRequestTimePerApplicationPlot extends AbstractPlotSource<Integer, AverageRequestTime> implements PlotSource { private PlotService plotService; @Autowired public AverageRequestTimePerApplicationPlot(PlotService plotService) { this.plotService = plotService; } @Override public JQPlot createPlot(String id) { List<DataSourcePlotSeries<Integer, AverageRequestTime>> series = plotService .getSeries(AverageRequestTime.class); JQPlot ret = new JQPlot( id, new ListModel<DataSourcePlotSeries<Integer, AverageRequestTime>>( series)); PlotOptions options = ret.getOptions(); options.getTitle().setText("Average request time (ms)"); setDefaultOptions(options); setSeriesLabels(options, series); setAxisMinAndMax(options, series, 50); //options.getAxes().getYaxis().setRenderer("$.jqplot.LogAxisRenderer"); return ret; } }