package hudson.plugins.emma; import java.io.Serializable; /** * Holds the configuration details for {@link hudson.model.HealthReport} generation * * @author Stephen Connolly * @since 1.7 */ public class EmmaHealthReportThresholds implements Serializable { private int minClass; private int maxClass; private int minMethod; private int maxMethod; private int minBlock; private int maxBlock; private int minLine; private int maxLine; public EmmaHealthReportThresholds() { } public EmmaHealthReportThresholds(int minClass, int maxClass, int minMethod, int maxMethod, int minBlock, int maxBlock, int minLine, int maxLine) { this.minClass = minClass; this.maxClass = maxClass; this.minMethod = minMethod; this.maxMethod = maxMethod; this.minBlock = minBlock; this.maxBlock = maxBlock; this.minLine = minLine; this.maxLine = maxLine; ensureValid(); } private int applyRange(int min , int value, int max) { if (value < min) return min; if (value > max) return max; return value; } public void ensureValid() { maxClass = applyRange(0, maxClass, 100); minClass = applyRange(0, minClass, maxClass); maxMethod = applyRange(0, maxMethod, 100); minMethod = applyRange(0, minMethod, maxMethod); maxBlock = applyRange(0, maxBlock, 100); minBlock = applyRange(0, minBlock, maxBlock); maxLine = applyRange(0, maxLine, 100); minLine = applyRange(0, minLine, maxLine); } public int getMinClass() { return minClass; } public void setMinClass(int minClass) { this.minClass = minClass; } public int getMaxClass() { return maxClass; } public void setMaxClass(int maxClass) { this.maxClass = maxClass; } public int getMinMethod() { return minMethod; } public void setMinMethod(int minMethod) { this.minMethod = minMethod; } public int getMaxMethod() { return maxMethod; } public void setMaxMethod(int maxMethod) { this.maxMethod = maxMethod; } public int getMinBlock() { return minBlock; } public void setMinBlock(int minBlock) { this.minBlock = minBlock; } public int getMaxBlock() { return maxBlock; } public void setMaxBlock(int maxBlock) { this.maxBlock = maxBlock; } public int getMinLine() { return minLine; } public void setMinLine(int minLine) { this.minLine = minLine; } public int getMaxLine() { return maxLine; } public void setMaxLine(int maxLine) { this.maxLine = maxLine; } }