public class PluginClassloaders extends Object
ClassWorld
.
If we have pluginA , then all classes and resources from package and subpackages of org.sonar.plugins.pluginA.api will be visible for all other plugins even if they located in dependent library.
ClassRealm
:Constructor and Description |
---|
PluginClassloaders(ClassLoader baseClassloader) |
Modifier and Type | Method and Description |
---|---|
ClassLoader |
add(PluginMetadata plugin) |
void |
clean() |
void |
done()
Establishes dependencies among ClassLoaders.
|
boolean |
extend(PluginMetadata plugin) |
ClassLoader |
get(String key)
Note that this method should be called only after creation of all ClassLoaders - see
done() . |
Map<String,Plugin> |
init(Collection<PluginMetadata> plugins) |
Plugin |
instantiatePlugin(PluginMetadata metadata) |
public PluginClassloaders(ClassLoader baseClassloader)
public Map<String,Plugin> init(Collection<PluginMetadata> plugins)
public ClassLoader add(PluginMetadata plugin)
public boolean extend(PluginMetadata plugin)
public void done()
public ClassLoader get(String key)
done()
.public Plugin instantiatePlugin(PluginMetadata metadata)
public void clean()
Copyright © 2009-2012 SonarSource. All Rights Reserved.