From: Jean-Baptiste Lievremont Date: Mon, 3 Feb 2014 08:34:07 +0000 (+0100) Subject: Fix quality flaw X-Git-Tag: 4.2~309 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=2b2714fb6409bf72234a8db8ae0189f91de82ba3;p=sonarqube.git Fix quality flaw --- diff --git a/sonar-server/src/main/java/org/sonar/server/rule/RuleRegistry.java b/sonar-server/src/main/java/org/sonar/server/rule/RuleRegistry.java index 5fa29601b2a..48c9324de88 100644 --- a/sonar-server/src/main/java/org/sonar/server/rule/RuleRegistry.java +++ b/sonar-server/src/main/java/org/sonar/server/rule/RuleRegistry.java @@ -34,6 +34,7 @@ import org.sonar.api.utils.TimeProfiler; import org.sonar.core.rule.*; import org.sonar.server.es.ESIndex; import org.sonar.server.es.SearchQuery; +import org.sonar.server.exceptions.NotFoundException; import javax.annotation.CheckForNull; @@ -121,9 +122,13 @@ public class RuleRegistry { */ public void saveOrUpdate(int ruleId) { RuleDto rule = ruleDao.selectById(ruleId); - Collection params = ruleDao.selectParameters(rule.getId()); - Collection tags = ruleDao.selectTags(rule.getId()); - save(rule, params, tags); + if (rule == null) { + throw new NotFoundException("Impossible to find rule with ID " + ruleId); + } else { + Collection params = ruleDao.selectParameters(rule.getId()); + Collection tags = ruleDao.selectTags(rule.getId()); + save(rule, params, tags); + } } public void save(RuleDto rule, Collection params, Collection tags) {