private List buildGrafanaBars()

in java/ws-server/src/main/java/com/epam/deltix/tbwg/webapp/services/grafana/GrafanaServiceImpl.java [630:669]


    private List<TimeSeriesEntry> buildGrafanaBars(ChartingResult chartingResult) {
        LinesQueryResult result = chartingResult.results().get(0);

        List<TimeSeriesEntry> list = new ObjectArrayList<>();
        TimeSeriesEntry open = new TimeSeriesEntry("open");
        list.add(open);
        TimeSeriesEntry close = new TimeSeriesEntry("close");
        list.add(close);
        TimeSeriesEntry high = new TimeSeriesEntry("high");
        list.add(high);
        TimeSeriesEntry low = new TimeSeriesEntry("low");
        list.add(low);

        result.getLines().forEach(lineResult -> {
            lineResult.getPoints().subscribe(message -> {
                if (message instanceof BarElementDef) {
                    BarElementDef barElementDef = (BarElementDef) message;
                    open.datapoints.add(new Number[]{
                            Double.parseDouble(barElementDef.getOpen()),
                            barElementDef.getTime()
                    });
                    close.datapoints.add(new Number[]{
                            Double.parseDouble(barElementDef.getClose()),
                            barElementDef.getTime()
                    });
                    high.datapoints.add(new Number[]{
                            Double.parseDouble(barElementDef.getHigh()),
                            barElementDef.getTime()
                    });
                    low.datapoints.add(new Number[]{
                            Double.parseDouble(barElementDef.getLow()),
                            barElementDef.getTime()
                    });
                }
            });
        });
        chartingResult.run();

        return list;
    }