/** * Initialize charts. * * @param chartProperties the chart properties * @param systemType the system type * @return true, if successful */ public boolean initializeCharts(ChartProperties chartProperties, String systemType) { this.chartProperties = chartProperties; this.systemType = systemType; ArrayList<ChartMappings> chartMappings = chartProperties.getChartMappings(systemType); if (chartMappings != null) { boolean isDirty = false; for (ChartMappings chartMapping : chartMappings.toArray(new ChartMappings[chartMappings.size()])) { isDirty |= stripMissingMonitors(chartMapping); if (!chartMapping.getMonitorIDs().isEmpty()) { UserChart userChart = new UserChart(chartMapping); ChartButton chartButton = new ChartButton(userChart); chartButton.setChartsLayout(this); addComponent(chartButton); } else { chartMappings.remove(chartMapping); } } if (isDirty) { chartProperties.setChartMappings(systemType, chartMappings); } return isDirty; } return false; }
/** Save charts to properties. */ private void saveChartsToProperties() { ArrayList<ChartMappings> chartMappings = new ArrayList<ChartMappings>(); Iterator<Component> iter = iterator(); while (iter.hasNext()) { ChartButton chartButton = (ChartButton) iter.next(); UserChart userChart = (UserChart) chartButton.getData(); ChartMappings chartMapping = new ChartMappings(userChart); chartMappings.add(chartMapping); } chartProperties.setChartMappings(systemType, chartMappings); }