From 223fda41d8f278c934ff0bf8a2b92cb5e7fb6393 Mon Sep 17 00:00:00 2001 From: Stephane Gamard Date: Wed, 4 Jun 2014 15:54:51 +0200 Subject: [PATCH] SONAR-5007 - Small Normalizer Update --- .../org/sonar/server/log/index/LogNormalizer.java | 2 +- .../qualityprofile/index/ActiveRuleNormalizer.java | 12 +++++++----- .../java/org/sonar/server/rule/index/RuleDoc.java | 7 +------ .../org/sonar/server/rule/index/RuleNormalizer.java | 12 +++++++----- .../java/org/sonar/server/search/BaseNormalizer.java | 2 +- 5 files changed, 17 insertions(+), 18 deletions(-) diff --git a/sonar-server/src/main/java/org/sonar/server/log/index/LogNormalizer.java b/sonar-server/src/main/java/org/sonar/server/log/index/LogNormalizer.java index 9d81d622bd6..75661f013b5 100644 --- a/sonar-server/src/main/java/org/sonar/server/log/index/LogNormalizer.java +++ b/sonar-server/src/main/java/org/sonar/server/log/index/LogNormalizer.java @@ -74,7 +74,7 @@ public class LogNormalizer extends BaseNormalizer { } @Override - public List normalize(Object object, Object key) { + public List normalize(Object object, LogKey key) { throw new IllegalStateException("Normalizer is not yet implemented"); } diff --git a/sonar-server/src/main/java/org/sonar/server/qualityprofile/index/ActiveRuleNormalizer.java b/sonar-server/src/main/java/org/sonar/server/qualityprofile/index/ActiveRuleNormalizer.java index b160eb817dc..48023b5d9af 100644 --- a/sonar-server/src/main/java/org/sonar/server/qualityprofile/index/ActiveRuleNormalizer.java +++ b/sonar-server/src/main/java/org/sonar/server/qualityprofile/index/ActiveRuleNormalizer.java @@ -160,11 +160,13 @@ public class ActiveRuleNormalizer extends BaseNormalizer normalize(Object object, Object key) { - Preconditions.checkArgument(object.getClass().isAssignableFrom(ActiveRuleParamDto.class), "Cannot Normalize class"); - Preconditions.checkArgument(key.getClass().isAssignableFrom(ActiveRuleKey.class), "key is not an ActiveRuleKey"); - - return normalize((ActiveRuleParamDto)object, (ActiveRuleKey)key); + public List normalize(Object object, ActiveRuleKey key) { + Preconditions.checkArgument(key != null, "key cannot be null"); + if (object.getClass().isAssignableFrom(ActiveRuleParamDto.class)) { + return normalize((ActiveRuleParamDto) object, key); + } else { + throw new IllegalStateException("Cannot normalize object of type '" + object.getClass() + "' in current context"); + } } public List normalize(ActiveRuleParamDto param, ActiveRuleKey key) { diff --git a/sonar-server/src/main/java/org/sonar/server/rule/index/RuleDoc.java b/sonar-server/src/main/java/org/sonar/server/rule/index/RuleDoc.java index e95b4e30313..4fe5af67582 100644 --- a/sonar-server/src/main/java/org/sonar/server/rule/index/RuleDoc.java +++ b/sonar-server/src/main/java/org/sonar/server/rule/index/RuleDoc.java @@ -31,7 +31,6 @@ import org.sonar.server.search.IndexUtils; import javax.annotation.Nullable; import java.util.ArrayList; -import java.util.Collections; import java.util.Date; import java.util.List; import java.util.Map; @@ -99,11 +98,7 @@ public class RuleDoc extends BaseDoc implements Rule { @Override public List tags() { - if(List.class.isAssignableFrom(RuleNormalizer.RuleField.TAGS.field().getClass())) { - return (List) getField(RuleNormalizer.RuleField.TAGS.field()); - } else { - return Collections.emptyList(); - } + return (List) getField(RuleNormalizer.RuleField.TAGS.field()); } @Override diff --git a/sonar-server/src/main/java/org/sonar/server/rule/index/RuleNormalizer.java b/sonar-server/src/main/java/org/sonar/server/rule/index/RuleNormalizer.java index 5766113b0d0..8e971541763 100644 --- a/sonar-server/src/main/java/org/sonar/server/rule/index/RuleNormalizer.java +++ b/sonar-server/src/main/java/org/sonar/server/rule/index/RuleNormalizer.java @@ -238,11 +238,13 @@ public class RuleNormalizer extends BaseNormalizer { } @Override - public List normalize(Object object, Object key) { - Preconditions.checkArgument(object.getClass().isAssignableFrom(RuleParamDto.class), "Cannot Normalize class"); - Preconditions.checkArgument(key.getClass().isAssignableFrom(RuleKey.class), "key is not an ActiveRuleKey"); - - return normalize((RuleParamDto)object, (RuleKey)key); + public List normalize(Object object, RuleKey key) { + Preconditions.checkArgument(key != null, "key of Rule must be set"); + if (object.getClass().isAssignableFrom(RuleParamDto.class)) { + return normalize((RuleParamDto) object, key); + } else { + throw new IllegalStateException("Cannot normalize object of type '" + object.getClass() + "' in current context"); + } } private List normalize(RuleParamDto param, RuleKey key) { diff --git a/sonar-server/src/main/java/org/sonar/server/search/BaseNormalizer.java b/sonar-server/src/main/java/org/sonar/server/search/BaseNormalizer.java index 1b110239c69..c4cd7173b77 100644 --- a/sonar-server/src/main/java/org/sonar/server/search/BaseNormalizer.java +++ b/sonar-server/src/main/java/org/sonar/server/search/BaseNormalizer.java @@ -35,7 +35,7 @@ public abstract class BaseNormalizer, KEY extends Serializa this.definition = definition; } - public abstract java.util.List normalize(Object object, Object key); + public abstract java.util.List normalize(Object object, KEY key); public abstract java.util.List normalize(KEY key); -- 2.39.5