From 93e365a6833d41304b654c2e9da87c58a694339e Mon Sep 17 00:00:00 2001 From: Simon Brandhof Date: Wed, 15 Jan 2014 22:54:26 +0100 Subject: [PATCH] SONAR-4908 move some classes to module sonar-deprecated --- .../sonar/api/rules/AnnotationRuleParser.java | 2 + .../org/sonar/api/rules/RuleRepository.java | 2 +- .../java/org/sonar/api/rules/RuleUtils.java | 0 .../api/rules/AnnotationRuleParserTest.java | 0 .../org/sonar/api/rules/RuleUtilsTest.java | 0 .../org/sonar/api/rule/RuleDefinitions.java | 2 +- .../test/i18n/RuleRepositoryTestHelper.java | 67 ------------------- 7 files changed, 4 insertions(+), 69 deletions(-) rename {sonar-plugin-api => sonar-deprecated}/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java (97%) rename {sonar-plugin-api => sonar-deprecated}/src/main/java/org/sonar/api/rules/RuleRepository.java (96%) rename {sonar-plugin-api => sonar-deprecated}/src/main/java/org/sonar/api/rules/RuleUtils.java (100%) rename {sonar-plugin-api => sonar-deprecated}/src/test/java/org/sonar/api/rules/AnnotationRuleParserTest.java (100%) rename {sonar-plugin-api => sonar-deprecated}/src/test/java/org/sonar/api/rules/RuleUtilsTest.java (100%) delete mode 100644 sonar-testing-harness/src/main/java/org/sonar/test/i18n/RuleRepositoryTestHelper.java diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java b/sonar-deprecated/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java similarity index 97% rename from sonar-plugin-api/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java rename to sonar-deprecated/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java index 0e93972d703..f800e45c045 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java +++ b/sonar-deprecated/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java @@ -39,7 +39,9 @@ import java.util.List; /** * @since 2.3 + * @deprecated in 4.2. Replaced by org.sonar.api.rule.RuleDefinitions#loadAnnotatedClasses() */ +@Deprecated public final class AnnotationRuleParser implements ServerComponent { private static final Logger LOG = LoggerFactory.getLogger(AnnotationRuleParser.class); diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/rules/RuleRepository.java b/sonar-deprecated/src/main/java/org/sonar/api/rules/RuleRepository.java similarity index 96% rename from sonar-plugin-api/src/main/java/org/sonar/api/rules/RuleRepository.java rename to sonar-deprecated/src/main/java/org/sonar/api/rules/RuleRepository.java index c0f0f03a292..b033fd0c9eb 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/rules/RuleRepository.java +++ b/sonar-deprecated/src/main/java/org/sonar/api/rules/RuleRepository.java @@ -28,7 +28,7 @@ import java.util.List; /** * @since 2.3 - * @deprecated in 4.2. Replaced by {@link org.sonar.api.rule.RuleDefinitions} + * @deprecated in 4.2. Replaced by org.sonar.api.rule.RuleDefinitions */ @Deprecated public abstract class RuleRepository implements ServerExtension { diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/rules/RuleUtils.java b/sonar-deprecated/src/main/java/org/sonar/api/rules/RuleUtils.java similarity index 100% rename from sonar-plugin-api/src/main/java/org/sonar/api/rules/RuleUtils.java rename to sonar-deprecated/src/main/java/org/sonar/api/rules/RuleUtils.java diff --git a/sonar-plugin-api/src/test/java/org/sonar/api/rules/AnnotationRuleParserTest.java b/sonar-deprecated/src/test/java/org/sonar/api/rules/AnnotationRuleParserTest.java similarity index 100% rename from sonar-plugin-api/src/test/java/org/sonar/api/rules/AnnotationRuleParserTest.java rename to sonar-deprecated/src/test/java/org/sonar/api/rules/AnnotationRuleParserTest.java diff --git a/sonar-plugin-api/src/test/java/org/sonar/api/rules/RuleUtilsTest.java b/sonar-deprecated/src/test/java/org/sonar/api/rules/RuleUtilsTest.java similarity index 100% rename from sonar-plugin-api/src/test/java/org/sonar/api/rules/RuleUtilsTest.java rename to sonar-deprecated/src/test/java/org/sonar/api/rules/RuleUtilsTest.java diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/rule/RuleDefinitions.java b/sonar-plugin-api/src/main/java/org/sonar/api/rule/RuleDefinitions.java index 98d07f53cfb..996f1987a58 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/rule/RuleDefinitions.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/rule/RuleDefinitions.java @@ -35,7 +35,7 @@ import java.util.Set; * Defines the coding rules. For example the Java Findbugs plugin provides an implementation of * this extension point in order to define the rules that it supports. *

- * This interface replaces the deprecated class {@link org.sonar.api.rules.RuleRepository}. + * This interface replaces the deprecated class org.sonar.api.rules.RuleRepository. * * @since 4.2 */ diff --git a/sonar-testing-harness/src/main/java/org/sonar/test/i18n/RuleRepositoryTestHelper.java b/sonar-testing-harness/src/main/java/org/sonar/test/i18n/RuleRepositoryTestHelper.java deleted file mode 100644 index 62c45d8f77b..00000000000 --- a/sonar-testing-harness/src/main/java/org/sonar/test/i18n/RuleRepositoryTestHelper.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * SonarQube, open source software quality management tool. - * Copyright (C) 2008-2013 SonarSource - * mailto:contact AT sonarsource DOT com - * - * SonarQube is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * SonarQube is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this program; if not, write to the Free Software Foundation, - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - */ -package org.sonar.test.i18n; - -import com.google.common.io.Closeables; -import org.sonar.api.rules.Rule; -import org.sonar.api.rules.RuleRepository; -import org.sonar.api.utils.SonarException; -import org.sonar.test.TestUtils; - -import java.io.IOException; -import java.io.InputStream; -import java.util.List; -import java.util.Properties; - -public final class RuleRepositoryTestHelper { - private RuleRepositoryTestHelper() { - // Static utility class - } - - public static List createRulesWithNameAndDescription(String pluginKey, RuleRepository repository) { - Properties props = loadProperties(String.format("/org/sonar/l10n/%s.properties", pluginKey)); - - List rules = repository.createRules(); - for (Rule rule : rules) { - String name = props.getProperty(String.format("rule.%s.%s.name", repository.getKey(), rule.getKey())); - String description = TestUtils.getResourceContent(String.format("/org/sonar/l10n/%s/rules/%s/%s.html", pluginKey, repository.getKey(), rule.getKey())); - - rule.setName(name); - rule.setDescription(description); - } - - return rules; - } - - private static Properties loadProperties(String resourcePath) { - Properties properties = new Properties(); - - InputStream input = null; - try { - input = TestUtils.class.getResourceAsStream(resourcePath); - properties.load(input); - return properties; - } catch (IOException e) { - throw new SonarException("Unable to read properties " + resourcePath, e); - } finally { - Closeables.closeQuietly(input); - } - } -} -- 2.39.5