]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-2692 allow ExtensionProvider#provide() to return null
authorSimon Brandhof <simon.brandhof@gmail.com>
Fri, 12 Aug 2011 10:06:40 +0000 (12:06 +0200)
committerSimon Brandhof <simon.brandhof@gmail.com>
Fri, 12 Aug 2011 10:06:40 +0000 (12:06 +0200)
sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchExtensionInstaller.java
sonar-server/src/main/java/org/sonar/server/plugins/DefaultServerPluginRepository.java

index f91054793b8fd7b6ec177ae0fbc0f809a0e4d9cb..75dec73bac888f15aef6f2216f6b3f817e210b4c 100644 (file)
@@ -64,12 +64,14 @@ public final class BatchExtensionInstaller implements BatchComponent {
     List<ExtensionProvider> providers = module.getComponents(ExtensionProvider.class);
     for (ExtensionProvider provider : providers) {
       Object obj = provider.provide();
-      if (obj instanceof Iterable) {
-        for (Object extension : (Iterable) obj) {
-          installExtension(module, extension);
+      if (obj != null) {
+        if (obj instanceof Iterable) {
+          for (Object extension : (Iterable) obj) {
+            installExtension(module, extension);
+          }
+        } else {
+          installExtension(module, obj);
         }
-      } else {
-        installExtension(module, obj);
       }
     }
   }
index 4776c65eeeed3927139740cb6dd9444b816c052d..6506f5caf8a96ad83036ec22f4ee76dedea1c74e 100644 (file)
@@ -135,12 +135,14 @@ public class DefaultServerPluginRepository implements ServerPluginRepository {
     List<ExtensionProvider> providers = container.getComponents(ExtensionProvider.class);
     for (ExtensionProvider provider : providers) {
       Object obj = provider.provide();
-      if (obj instanceof Iterable) {
-        for (Object extension : (Iterable) obj) {
-          installExtension(container, extension);
+      if (obj != null) {
+        if (obj instanceof Iterable) {
+          for (Object extension : (Iterable) obj) {
+            installExtension(container, extension);
+          }
+        } else {
+          installExtension(container, obj);
         }
-      } else {
-        installExtension(container, obj);
       }
     }
   }