org.sonar.api
Class ExtensionProvider

java.lang.Object
  extended by org.sonar.api.ExtensionProvider
All Implemented Interfaces:
Extension

public abstract class ExtensionProvider
extends Object
implements Extension

Factory of extensions. It allows to dynamically create extensions depending upon runtime context. A use-case is to create one rule repository by language.

Notes :

Example:

 public class RuleRepositoryProvider extends ExtensionProvider implements ServerExtension {
   private Language[] languages;

   public RuleRepositoryProvider(Language[] languages) {
     this.languages = languages;
   }

   public List provide() {
     List result = new ArrayList();
     for(Language language: languages) {
       result.add(new RuleRepository(..., language, ...));
     }
     return result;
   }
 }
 

Since:
2.3

Constructor Summary
ExtensionProvider()
           
 
Method Summary
abstract  Object provide()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExtensionProvider

public ExtensionProvider()
Method Detail

provide

public abstract Object provide()


Copyright © 2009-2011 SonarSource. All Rights Reserved.