aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-batch
diff options
context:
space:
mode:
authorJulien HENRY <julien.henry@sonarsource.com>2013-01-18 17:10:45 +0100
committerJulien HENRY <julien.henry@sonarsource.com>2013-01-18 17:10:45 +0100
commit87a78815d4e7700b40620497db59b49119a31c12 (patch)
treea254659cb376b583a848d5cf5d6e7e46306c66dc /sonar-batch
parent8133a2c491d5d59c35af8a7d55dba506ade3c8fa (diff)
downloadsonarqube-87a78815d4e7700b40620497db59b49119a31c12.tar.gz
sonarqube-87a78815d4e7700b40620497db59b49119a31c12.zip
SONAR-4069 Removed TaskDefinitionExtension interface.
Diffstat (limited to 'sonar-batch')
-rw-r--r--sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionInstaller.java28
-rw-r--r--sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionUtils.java14
2 files changed, 7 insertions, 35 deletions
diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionInstaller.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionInstaller.java
index 3a54b6d2164..6d4de85171a 100644
--- a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionInstaller.java
+++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionInstaller.java
@@ -31,6 +31,7 @@ import org.sonar.api.config.Settings;
import org.sonar.api.platform.ComponentContainer;
import org.sonar.api.platform.PluginMetadata;
import org.sonar.api.resources.Project;
+import org.sonar.api.task.TaskDefinition;
import org.sonar.batch.bootstrapper.EnvironmentInformation;
import javax.annotation.Nullable;
@@ -62,34 +63,13 @@ public class ExtensionInstaller implements BatchComponent {
installTaskDefinition(container, metadata, extension);
}
}
-
- List<ExtensionProvider> providers = container.getComponentsByType(ExtensionProvider.class);
- for (ExtensionProvider provider : providers) {
- executeTaskDefinitionExtensionProvider(container, provider);
- }
- }
-
- private void executeTaskDefinitionExtensionProvider(ComponentContainer container, ExtensionProvider provider) {
- Object obj = provider.provide();
- if (obj instanceof Iterable) {
- for (Object extension : (Iterable) obj) {
- installTaskDefinition(container, null, extension);
- }
- } else {
- installTaskDefinition(container, null, obj);
- }
}
boolean installTaskDefinition(ComponentContainer container, @Nullable PluginMetadata plugin, Object extension) {
boolean installed;
- if (ExtensionUtils.isTaskDefinitionExtension(extension) &&
- ExtensionUtils.supportsEnvironment(extension, environment)) {
- if (plugin != null) {
- LOG.debug("Installing task definition extension {} from plugin {}", extension.toString(), plugin.getKey());
- }
- else {
- LOG.debug("Installing task definition extension {}", extension.toString());
- }
+ if (ExtensionUtils.isType(extension, TaskDefinition.class)
+ && ExtensionUtils.supportsEnvironment(extension, environment)) {
+ LOG.debug("Installing task definition extension {} from plugin {}", extension.toString(), plugin.getKey());
container.addExtension(plugin, extension);
installed = true;
} else {
diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionUtils.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionUtils.java
index 5ad891af55f..e363f68144d 100644
--- a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionUtils.java
+++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionUtils.java
@@ -19,18 +19,14 @@
*/
package org.sonar.batch.bootstrap;
-import org.sonar.batch.tasks.RequiresProject;
-
-import org.sonar.api.task.TaskDefinitionExtension;
-import org.sonar.api.task.TaskExtension;
-
import org.apache.commons.lang.StringUtils;
import org.sonar.api.BatchExtension;
-import org.sonar.api.Extension;
import org.sonar.api.batch.InstantiationStrategy;
import org.sonar.api.batch.SupportedEnvironment;
+import org.sonar.api.task.TaskExtension;
import org.sonar.api.utils.AnnotationUtils;
import org.sonar.batch.bootstrapper.EnvironmentInformation;
+import org.sonar.batch.tasks.RequiresProject;
import org.sonar.core.DryRunIncompatible;
final class ExtensionUtils {
@@ -47,10 +43,6 @@ final class ExtensionUtils {
return InstantiationStrategy.PER_PROJECT.equals(strategy);
}
- static boolean isTaskDefinitionExtension(Object extension) {
- return isType(extension, TaskDefinitionExtension.class);
- }
-
static boolean isTaskExtension(Object extension) {
return isType(extension, TaskExtension.class);
}
@@ -85,7 +77,7 @@ final class ExtensionUtils {
return env != null && env.value().length == 1 && StringUtils.equalsIgnoreCase("maven", env.value()[0]);
}
- static boolean isType(Object extension, Class<? extends Extension> extensionClass) {
+ static boolean isType(Object extension, Class<?> extensionClass) {
Class clazz = (extension instanceof Class ? (Class) extension : extension.getClass());
return extensionClass.isAssignableFrom(clazz);
}