package com.griddynamics.jagger.dbapi.model; import com.griddynamics.jagger.dbapi.dto.MetricNameDto; import java.util.Collections; import java.util.List; /** * Node represents single end-node (without children nodes) in control tree in WebUI * By default node contains description of one Metric (in MetricNameDto) * But it is possible to group several metrics under single node * In this case one node in tree, but several rows in Summary table, several lines in the plot * User: amikryukov * Date: 11/26/13 */ public class MetricNode extends AbstractIdentifyNode { private List<MetricNameDto> metricNameDtoList; public MetricNode() {} public List<MetricNameDto> getMetricNameDtoList() { return metricNameDtoList; } public void setMetricNameDtoList(List<MetricNameDto> metricNameDtoList) { this.metricNameDtoList = metricNameDtoList; } // preferable way to set parameters public void init(String id, String displayName, List<MetricNameDto> metricNameDtoList) { this.id = id; this.displayName = displayName; this.metricNameDtoList = metricNameDtoList; } @Override public List<? extends AbstractIdentifyNode> getChildren() { return Collections.emptyList(); } @Override public String toString() { String result = ""; result += "MetricNode{\n"; for (MetricNameDto metricNameDto : metricNameDtoList) { result += metricNameDto.toString(); } result += "\n}"; return result; } }