final CategoryDataset dataset = data.build();
protected JFreeChart createGraph() { return GraphHelper.createChart(req, dataSetBuilder.build()); } }.doMap(req, rsp);
protected JFreeChart createGraph() { return GraphHelper.createChart(req, dataSetBuilder.build()); } }.doPng(req,rsp);
protected JFreeChart createGraph() { return GraphHelper.createChart(req, dataSetBuilder.build()); } }.doMap(req, res);
protected JFreeChart createGraph() { return GraphHelper.createChart(req, dataSetBuilder.build()); } }.doPng(req, res);
private CategoryDataset buildDataSet(final Map<String, Integer[]> annotationCountByUser) { DataSetBuilder<String, String> builder = new DataSetBuilder<String, String>(); for (Entry<String, Integer[]> entry : annotationCountByUser.entrySet()) { String userName= entry.getKey(); Integer[] countsPerPriority = entry.getValue(); for (int i = 0; i < countsPerPriority.length; i++) { builder.add(countsPerPriority[i], Integer.toString(i), userName); } } return builder.build(); }
protected JFreeChart createGraph() { return GraphHelper.createMethodChart(req, dataSetBuilder.build(), statusMap, // getUrl instead of getUpUrl as latter gets the complete url and we only need // relative url path from a specific build getUrl()); } };
/** * Creates a data set that contains one series of values per day. * * @param averagePerDay * the collected values averaged by day * @return a data set */ @SuppressWarnings("unchecked") private CategoryDataset createDatasetPerDay(final Map<LocalDate, List<Integer>> averagePerDay) { List<LocalDate> buildDates = Lists.newArrayList(averagePerDay.keySet()); Collections.sort(buildDates); DataSetBuilder<String, LocalDateLabel> builder = new DataSetBuilder<String, LocalDateLabel>(); for (LocalDate date : buildDates) { int level = 0; for (Integer average : averagePerDay.get(date)) { builder.add(average, getRowId(level), new LocalDateLabel(date)); level++; } } return builder.build(); }
private CategoryDataset buildDataSet(Map<LocalDate, TestResultSummary> summaries) { DataSetBuilder<String,LocalDate> dsb = new DataSetBuilder<String,LocalDate>(); for (Map.Entry<LocalDate, TestResultSummary> entry : summaries.entrySet()) { dsb.add( entry.getValue().getFailed(), Messages.Dashboard_Failed(), entry.getKey()); dsb.add( entry.getValue().getSkipped(), Messages.Dashboard_Skipped(), entry.getKey()); dsb.add( entry.getValue().getSuccess(), Messages.Dashboard_Total(), entry.getKey()); } return dsb.build(); }
/** * Creates a view to configure the trend graph for the current user. * * @param request Stapler request * @return a view to configure the trend graph for the current user */ private Object createTrendReport(final StaplerRequest request) { String filename = getTrendReportFilename(request); CategoryDataset dataSet = getTrendReportData(request, filename).build(); return new TrendReportDetail(job, PLUGIN_NAME, request, filename, dataSet); }
private static CategoryDataset buildComplexityDataSet(Map<LocalDate, VectorCASTCoverageResultSummary> summaries) { DataSetBuilder<String, LocalDate> dataSetBuilder = new DataSetBuilder<String, LocalDate>(); for (Map.Entry<LocalDate, VectorCASTCoverageResultSummary> entry : summaries.entrySet()) { float Complexity = 0; boolean hasComplexity = false; List<VectorCASTCoverageResultSummary> list = entry.getValue().getVectorCASTCoverageResults(); for (VectorCASTCoverageResultSummary item : list) { if (item.hasComplexity()) { Complexity += item.getComplexity(); hasComplexity = true; } } if (hasComplexity) { dataSetBuilder.add(Complexity, "Complexity", entry.getKey()); } } return dataSetBuilder.build(); }
public void doSummarizerGraph(StaplerRequest request, StaplerResponse response) throws IOException { String parameter = request.getParameter("performanceReportPosition"); Run<?, ?> previousBuild = getBuild(); Map<Run<?, ?>, Map<String, PerformanceReport>> buildReports = getBuildReports(parameter, previousBuild); DataSetBuilder<NumberOnlyBuildLabel, String> dataSetBuilderSummarizer = new DataSetBuilder<NumberOnlyBuildLabel, String>(); ReportValueSelector valueSelector = ReportValueSelector.get(getBuild().getParent()); for (Run<?, ?> currentBuild : buildReports.keySet()) { NumberOnlyBuildLabel label = new NumberOnlyBuildLabel(currentBuild); PerformanceReport report = buildReports.get(currentBuild).get(parameter); // Now we should have the data necessary to generate the graphs! for (String key : report.getUriReportMap().keySet()) { long methodValue = valueSelector.getValue(report.getUriReportMap().get(key)); dataSetBuilderSummarizer.add(methodValue, label, key); } } ChartUtil.generateGraph( request, response, createSummarizerChart(dataSetBuilderSummarizer.build()), 400, 200); }
public void doRespondingTimeGraph(StaplerRequest request, StaplerResponse response) throws IOException { String parameter = request.getParameter("performanceReportPosition"); Run<?, ?> previousBuild = getBuild(); final Map<Run<?, ?>, Map<String, PerformanceReport>> buildReports = getBuildReports(parameter, previousBuild); // Now we should have the data necessary to generate the graphs! DataSetBuilder<String, NumberOnlyBuildLabel> dataSetBuilder = new DataSetBuilder<String, NumberOnlyBuildLabel>(); ReportValueSelector valueSelector = ReportValueSelector.get(getBuild().getParent()); String keyLabel = getKeyLabel(valueSelector.getGraphType()); for (Run<?, ?> currentBuild : buildReports.keySet()) { NumberOnlyBuildLabel label = new NumberOnlyBuildLabel(currentBuild); PerformanceReport report = buildReports.get(currentBuild).get(parameter); dataSetBuilder.add(valueSelector.getValue(report), keyLabel, label); } String legendLimit = request.getParameter("legendLimit"); int limit = (legendLimit != null && !legendLimit.isEmpty()) ? Integer.parseInt(legendLimit) : Integer.MAX_VALUE; ChartUtil.generateGraph(request, response, createRespondingTimeChart(dataSetBuilder.build(), limit), 400, 200); }
/** * Generates a graph with disk usage trend * */ public Graph getOverallGraph(){ long maxValue = 0; //First iteration just to get scale of the y-axis for (DiskUsageOvearallGraphGenerator.DiskUsageRecord usage : DiskUsageProjectActionFactory.DESCRIPTOR.history ){ maxValue = Math.max(maxValue, Math.max(usage.getWsUsage(), usage.getBuildUsage())); } int floor = (int) DiskUsage.getScale(maxValue); String unit = DiskUsage.getUnitString(floor); double base = Math.pow(1024, floor); DataSetBuilder<String, Date> dsb = new DataSetBuilder<String, Date>(); for (DiskUsageOvearallGraphGenerator.DiskUsageRecord usage : DiskUsageProjectActionFactory.DESCRIPTOR.history ) { Date label = usage.getDate(); dsb.add(((Long) usage.getWsUsage()) / base, "workspace", label); dsb.add(((Long) usage.getBuildUsage()) / base, "build", label); } return new DiskUsageGraph(dsb.build(), unit); }
public void doRespondingTimeGraphPerTestCaseMode(StaplerRequest request, StaplerResponse response) throws IOException { if (ChartUtil.awtProblemCause != null) { // not available. send out error message response.sendRedirect2(request.getContextPath() + "/images/headless.png"); return; } String testUri = request.getParameter("performanceReportTest"); ChartUtil.generateGraph(request, response, createRespondingTimeChart(getChartDatasetBuilderForBuilds(testUri, getProject().getBuilds()).build()), 600, 200); }
/** * Generate a duration trend graph for device minutes used for recent results. * * @param owner The build which owns the latest result. * @param isCompleted The flag to denote if the result is completed which determines our caching. * @param results The list of previous to latest results which generate the trend. * @return The duration trend graph. */ public static Graph createDurationTrendGraph(AbstractBuild<?, ?> owner, Boolean isCompleted, List<AWSDeviceFarmTestResult> results) { DataSetBuilder<String, NumberOnlyBuildLabel> builder = new DataSetBuilder<String, NumberOnlyBuildLabel>(); for (AWSDeviceFarmTestResult result : results) { // Create label for this result using its Jenkins build number. Run<?, ?> build = result.getOwner(); NumberOnlyBuildLabel label = new NumberOnlyBuildLabel(build); // Attach duration value for all results in our trend. builder.add(result.getDuration(), "Minutes", label); } CategoryDataset dataset = builder.build(); Color[] colors = new Color[]{AWSDeviceFarmGraph.DurationColor}; return new AWSDeviceFarmGraph(owner, isCompleted, getGraphSize(), dataset, "Build #", "Device Minutes Used", colors); }
private CategoryDataset buildDataSet(StaplerRequest req) { boolean failureOnly = Boolean.valueOf(req.getParameter("failureOnly")); DataSetBuilder<String,NumberOnlyBuildLabel> dsb = new DataSetBuilder<String,NumberOnlyBuildLabel>(); for( AbstractTestResultAction<?> a=this; a!=null; a=a.getPreviousResult(AbstractTestResultAction.class) ) { dsb.add( a.getFailCount(), "failed", new NumberOnlyBuildLabel(a.owner)); if(!failureOnly) { dsb.add( a.getSkipCount(), "skipped", new NumberOnlyBuildLabel(a.owner)); dsb.add( a.getTotalCount()-a.getFailCount()-a.getSkipCount(),"total", new NumberOnlyBuildLabel(a.owner)); } } return dsb.build(); }
private CategoryDataset buildDataSet(StaplerRequest req) { boolean failureOnly = Boolean.valueOf(req.getParameter("failureOnly")); DataSetBuilder<String,NumberOnlyBuildLabel> dsb = new DataSetBuilder<String,NumberOnlyBuildLabel>(); for( AbstractTestResultAction<?> a=this; a!=null; a=a.getPreviousResult(AbstractTestResultAction.class) ) { dsb.add( a.getFailCount(), "failed", new NumberOnlyBuildLabel(a.owner)); if(!failureOnly) { dsb.add( a.getSkipCount(), "skipped", new NumberOnlyBuildLabel(a.owner)); dsb.add( a.getTotalCount()-a.getFailCount()-a.getSkipCount(),"total", new NumberOnlyBuildLabel(a.owner)); } } return dsb.build(); }
public void doGraphMap(StaplerRequest req, StaplerResponse rsp) throws IOException { Calendar t = getProject().getLastCompletedBuild().getTimestamp(); if (req.checkIfModified(t, rsp)) { return; // up to date } DataSetBuilder<String, ChartUtil.NumberOnlyBuildLabel> dataSetBuilder = new DataSetBuilder<String, ChartUtil.NumberOnlyBuildLabel>(); //TODO: optimize by using cache populateDataSetBuilder(dataSetBuilder); ChartUtil.generateClickableMap(req, rsp, GraphHelper.createChart(req, dataSetBuilder.build()), getGraphWidth(), getGraphHeight()); }
private CategoryDataset buildDataSet() { DataSetBuilder<String, ChartUtil.NumberOnlyBuildLabel> dsb = new DataSetBuilder<String, ChartUtil.NumberOnlyBuildLabel>(); for (LogParserAction a = this; a != null; a = a.getPreviousAction()) { dsb.add(a.result.getTotalErrors(), "errors", new ChartUtil.NumberOnlyBuildLabel(a.getOwner())); dsb.add(a.result.getTotalWarnings(), "warnings", new ChartUtil.NumberOnlyBuildLabel(a.getOwner())); dsb.add(a.result.getTotalInfos(), "infos", new ChartUtil.NumberOnlyBuildLabel(a.getOwner())); } return dsb.build(); }