package eu.choreos.monitoring.platform.daemon; public class DoubleThreshold extends AbstractThreshold { public static final int BETWEEN = 1; private double upperBound, lowerBound; public DoubleThreshold(String name, int comparison, double lowerBound, double upperBound) { super(name, comparison); this.lowerBound = lowerBound; this.upperBound = upperBound; } @Override protected Boolean isWithinBoundaries(Double metricValue) { lastMeasurement = metricValue; switch (comparison) { case BETWEEN: return (lastMeasurement >= lowerBound) && (lastMeasurement <= upperBound); default: } return false; } @Override protected String getComparisonAsString() { switch (comparison) { case BETWEEN: return "between"; default: return "undefined"; } } @Override public String toString() { return "Triggered: " + name + " " + getComparisonAsString() + " " + lowerBound + " and " + upperBound + ". Measured: " + lastMeasurement ; } @Override public String toEventRuleData() { return this.toString(); } }