diff options
author | Julien HENRY <julien.henry@sonarsource.com> | 2013-01-18 17:10:45 +0100 |
---|---|---|
committer | Julien HENRY <julien.henry@sonarsource.com> | 2013-01-18 17:10:45 +0100 |
commit | 87a78815d4e7700b40620497db59b49119a31c12 (patch) | |
tree | a254659cb376b583a848d5cf5d6e7e46306c66dc /sonar-batch | |
parent | 8133a2c491d5d59c35af8a7d55dba506ade3c8fa (diff) | |
download | sonarqube-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.java | 28 | ||||
-rw-r--r-- | sonar-batch/src/main/java/org/sonar/batch/bootstrap/ExtensionUtils.java | 14 |
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); } |