From 1cde18a7cee3b5d26bbcfd859d342ca3b3a1c50a Mon Sep 17 00:00:00 2001 From: Simon Brandhof Date: Tue, 14 Jan 2014 23:44:56 +0100 Subject: [PATCH] SONAR-4908 remove org.sonar.api.rule.Rule#tags and depreciate RuleRepository --- .../main/java/org/sonar/api/rules/Rule.java | 68 +++++++------------ .../org/sonar/api/rules/RuleRepository.java | 2 + .../java/org/sonar/api/rules/RuleTest.java | 13 ---- 3 files changed, 26 insertions(+), 57 deletions(-) diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/rules/Rule.java b/sonar-plugin-api/src/main/java/org/sonar/api/rules/Rule.java index 8e52a54cf98..070ba5b4501 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/rules/Rule.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/rules/Rule.java @@ -20,8 +20,6 @@ package org.sonar.api.rules; -import com.google.common.collect.Sets; - import com.google.common.base.Joiner; import com.google.common.collect.ImmutableSet; import org.apache.commons.lang.StringUtils; @@ -37,8 +35,10 @@ import org.sonar.check.Cardinality; import javax.annotation.CheckForNull; import javax.annotation.Nullable; import javax.persistence.*; - -import java.util.*; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; @Entity @Table(name = "rules") @@ -126,9 +126,6 @@ public final class Rule { @Column(name = "updated_at", updatable = true, nullable = true) private Date updatedAt; - @Transient - private transient Set tags = Collections.unmodifiableSet(new HashSet()); - /** * @deprecated since 2.3. Use the factory method {@link #create()} */ @@ -269,36 +266,19 @@ public final class Rule { public RuleParam createParameter() { RuleParam parameter = new RuleParam() - .setRule(this); + .setRule(this); params.add(parameter); return parameter; } public RuleParam createParameter(String key) { RuleParam parameter = new RuleParam() - .setKey(key) - .setRule(this); + .setKey(key) + .setRule(this); params.add(parameter); return parameter; } - /** - * @since 4.2 - */ - public Collection getTags() { - return tags; - } - - /** - * @since 4.2 - */ - public Rule setTags(String... tags) { - Set newTags = Sets.newTreeSet(); - newTags.addAll(Arrays.asList(tags)); - this.tags = Collections.unmodifiableSet(newTags); - return this; - } - /** * @deprecated since 2.5. See http://jira.codehaus.org/browse/SONAR-2007 */ @@ -451,34 +431,34 @@ public final class Rule { } Rule other = (Rule) obj; return new EqualsBuilder() - .append(pluginName, other.getRepositoryKey()) - .append(key, other.getKey()) - .isEquals(); + .append(pluginName, other.getRepositoryKey()) + .append(key, other.getKey()) + .isEquals(); } @Override public int hashCode() { return new HashCodeBuilder(17, 37) - .append(pluginName) - .append(key) - .toHashCode(); + .append(pluginName) + .append(key) + .toHashCode(); } @Override public String toString() { // Note that ReflectionToStringBuilder will not work here - see SONAR-3077 return new ToStringBuilder(this, ToStringStyle.SHORT_PREFIX_STYLE) - .append("id", id) - .append("name", name) - .append("key", key) - .append("configKey", configKey) - .append("plugin", pluginName) - .append("severity", priority) - .append("cardinality", cardinality) - .append("status", status) - .append("language", language) - .append("parent", parent) - .toString(); + .append("id", id) + .append("name", name) + .append("key", key) + .append("configKey", configKey) + .append("plugin", pluginName) + .append("severity", priority) + .append("cardinality", cardinality) + .append("status", status) + .append("language", language) + .append("parent", parent) + .toString(); } @CheckForNull diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/rules/RuleRepository.java b/sonar-plugin-api/src/main/java/org/sonar/api/rules/RuleRepository.java index ffc2bfc28e1..c0f0f03a292 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/rules/RuleRepository.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/rules/RuleRepository.java @@ -28,7 +28,9 @@ import java.util.List; /** * @since 2.3 + * @deprecated in 4.2. Replaced by {@link org.sonar.api.rule.RuleDefinitions} */ +@Deprecated public abstract class RuleRepository implements ServerExtension { private String key; diff --git a/sonar-plugin-api/src/test/java/org/sonar/api/rules/RuleTest.java b/sonar-plugin-api/src/test/java/org/sonar/api/rules/RuleTest.java index 02717ac6624..b11a7ad41e9 100644 --- a/sonar-plugin-api/src/test/java/org/sonar/api/rules/RuleTest.java +++ b/sonar-plugin-api/src/test/java/org/sonar/api/rules/RuleTest.java @@ -104,17 +104,4 @@ public class RuleTest { private List getExamplesContainingNewLineCharacter() { return Arrays.asList("te\nst", "te\ns\nt", "te\rst", "te\n\rst", "te\r\nst"); } - - @Test - public void should_manage_tags() { - String tag1 = "tag1"; - String tag2 = "tag2"; - String tag3 = "tag3"; - Rule rule = Rule.create(); - - assertThat(rule.getTags()).isEmpty(); - assertThat(rule.setTags(tag1, tag2, tag3).getTags()).containsOnly(tag1, tag2, tag3); - assertThat(rule.setTags(tag1, tag2).getTags()).containsOnly(tag1, tag2); - assertThat(rule.setTags().getTags()).isEmpty(); - } } -- 2.39.5