aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-plugin-api/src
diff options
context:
space:
mode:
Diffstat (limited to 'sonar-plugin-api/src')
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/server/rule/DebtRemediationFunction.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/server/rule/DebtRemediationFunction.java b/sonar-plugin-api/src/main/java/org/sonar/api/server/rule/DebtRemediationFunction.java
index c1853d28d30..74b95aea2f1 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/server/rule/DebtRemediationFunction.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/server/rule/DebtRemediationFunction.java
@@ -52,6 +52,10 @@ public class DebtRemediationFunction {
// TODO validate factor and offset format
this.factor = StringUtils.deleteWhitespace(factor);
this.offset = StringUtils.deleteWhitespace(offset);
+ validate();
+ }
+
+ private void validate(){
switch (type) {
case LINEAR:
if (this.factor == null || this.offset != null) {
@@ -68,6 +72,8 @@ public class DebtRemediationFunction {
throw new ValidationException(String.format("%s is invalid, Constant/issue remediation function should only define an offset", this));
}
break;
+ default:
+ throw new IllegalStateException(String.format("Remediation function of %s is unknown", this));
}
}