package net.iponweb.disthene.reader.graphite; import net.iponweb.disthene.reader.beans.TimeSeries; import net.iponweb.disthene.reader.exceptions.EvaluationException; import net.iponweb.disthene.reader.graphite.evaluation.EvaluationContext; import net.iponweb.disthene.reader.graphite.evaluation.TargetEvaluator; import java.util.List; /** * @author Andrei Ivanov */ public class PathTarget extends Target { private String path; private String tenant; private Long from; private Long to; public PathTarget(String text, EvaluationContext context, String path, String tenant, Long from, Long to) { super(text, context); this.path = path; this.tenant = tenant; this.from = from; this.to = to; } public String getPath() { return path; } public String getTenant() { return tenant; } public Long getFrom() { return from; } public void setFrom(Long from) { this.from = from; } public void setTo(Long to) { this.to = to; } public Long getTo() { return to; } @Override public String toString() { return "PathTarget{" + "path='" + path + '\'' + '}'; } @Override public List<TimeSeries> evaluate(TargetEvaluator evaluator) throws EvaluationException { return evaluator.visit(this); } @Override public Target shiftBy(long shift) { return new PathTarget(getText(), getContext(), path, tenant, from - shift, to - shift); } @Override public Target previous(long period) { return new PathTarget(getText(), getContext(), path, tenant, from - period, from - 1); } }