Jagger
 All Classes Namespaces Files Functions Variables Enumerator Groups Pages
Map<MetricEntity, MetricSummaryValueEntity> com.griddynamics.jagger.engine.e1.services.DefaultDataService.getMetricSummary ( Collection< MetricEntity metrics)

Return summary values for selected metrics.

Parameters
metrics- metric entities
Returns
map of <metric entity, summary>
Author
Dmitry Latnikov

Preferable way to get data. Data will be fetched from database in batch in single request =>
it is faster to get batch of metrics than fetch every metric in for loop

Implements com.griddynamics.jagger.engine.e1.services.DataService.

Definition at line 343 of file DefaultDataService.java.

References com.griddynamics.jagger.engine.e1.services.data.service.MetricSummaryValueEntity.setDecision(), and com.griddynamics.jagger.engine.e1.services.data.service.MetricSummaryValueEntity.setValue().

343  {
344 
345  Set<MetricNameDto> metricNameDtoSet = new HashSet<MetricNameDto>();
346  Map<MetricNameDto, MetricEntity> matchMap = new HashMap<MetricNameDto, MetricEntity>();
347 
348  for (MetricEntity metric : metrics) {
349  if (metric.isSummaryAvailable()) {
350  metricNameDtoSet.add(metric.getMetricNameDto());
351  matchMap.put(metric.getMetricNameDto(), metric);
352  }
353  }
354 
355  Collection<SummarySingleDto> metricDtoList = databaseService.getSummaryByMetricNameDto(metricNameDtoSet, true).values();
356 
357  Map<MetricEntity, MetricSummaryValueEntity> result = new HashMap<MetricEntity, MetricSummaryValueEntity>();
358  for (SummarySingleDto metricDto : metricDtoList) {
359  MetricEntity metricEntity = matchMap.get(metricDto.getMetricName());
360  MetricSummaryValueEntity value = new MetricSummaryValueEntity();
361  value.setValue(Double.parseDouble(metricDto.getValues().iterator().next().getValue()));
362  value.setDecision(metricDto.getValues().iterator().next().getDecision());
363  result.put(metricEntity, value);
364  }
365 
366  return result;
367  }

Here is the call graph for this function: