1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package com.hack23.cia.web.impl.ui.application.views.common.chartfactory.impl;
20
21 import java.util.List;
22
23 import org.dussan.vaadin.dcharts.DCharts;
24 import org.dussan.vaadin.dcharts.base.elements.XYseries;
25 import org.dussan.vaadin.dcharts.data.DataSeries;
26 import org.dussan.vaadin.dcharts.options.Series;
27 import org.springframework.beans.factory.annotation.Autowired;
28 import org.springframework.stereotype.Service;
29
30 import com.hack23.cia.model.external.worldbank.data.impl.WorldBankData;
31 import com.hack23.cia.model.internal.application.data.impl.ViewWorldbankIndicatorDataCountrySummary;
32 import com.hack23.cia.web.impl.ui.application.views.common.chartfactory.api.ChartOptions;
33 import com.hack23.cia.web.impl.ui.application.views.common.chartfactory.api.WorldIndicatorChartDataManager;
34 import com.vaadin.ui.AbstractOrderedLayout;
35
36
37
38
39 @Service
40 public final class WorldIndicatorChartDataManagerImpl extends AbstractChartDataManagerImpl implements WorldIndicatorChartDataManager {
41
42
43 @Autowired
44 private ChartOptions chartOptions;
45
46
47
48
49
50 public WorldIndicatorChartDataManagerImpl() {
51 super();
52 }
53
54
55 @Override
56 public void createIndicatorChart(final AbstractOrderedLayout content,final List<WorldBankData> list,
57 final ViewWorldbankIndicatorDataCountrySummary summary) {
58 final DataSeries dataSeries = new DataSeries();
59
60 final Series series = new Series();
61
62 series.addSeries(new XYseries().setLabel("Sweden"));
63
64 dataSeries.newSeries();
65
66 for (final WorldBankData item : list) {
67 if (item != null && item.getYearDate() != null && item.getDataValue() != null
68 && !item.getDataValue().isEmpty()) {
69 dataSeries.add(item.getYearDate() + "-01-01", Float.valueOf(item.getDataValue()));
70 }
71 }
72
73 addChart(content,"Country indicator" +summary.getIndicatorName(), new DCharts().setDataSeries(dataSeries).setOptions(chartOptions.createOptionsCountryLineChart(series)).show());
74 }
75
76
77 }