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;
}