|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface PluginStrategy
Pluggability point for how to create PluginWrapper
.
This extension point was added to allow plugins to be loaded into a different environment
(such as loading it in an existing DI container like Plexus.) A plugin strategy is a singleton
instance, and as such this feature is primarily meant for OEM.
See PluginManager.createPluginStrategy()
for how this instance is created.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface hudson.ExtensionPoint |
---|
ExtensionPoint.LegacyInstancesAreScopedToHudson |
Method Summary | ||
---|---|---|
PluginWrapper |
createPluginWrapper(File archive)
Creates a plugin wrapper, which provides a management interface for the plugin |
|
|
findComponents(Class<T> type,
Hudson hudson)
Find components of the given type using the assigned strategy. |
|
void |
initializeComponents(PluginWrapper plugin)
Optionally start services provided by the plugin. |
|
void |
load(PluginWrapper wrapper)
Loads the plugin and starts it. |
Method Detail |
---|
PluginWrapper createPluginWrapper(File archive) throws IOException
archive
- Either a directory that points to a pre-exploded plugin, or an jpi file, or an jpl file.
IOException
void load(PluginWrapper wrapper) throws IOException
This should be done after all the classloaders are constructed for all the plugins, so that dependencies can be properly loaded by plugins.
IOException
void initializeComponents(PluginWrapper plugin)
plugin
- <T> List<ExtensionComponent<T>> findComponents(Class<T> type, Hudson hudson)
type
- The component typehudson
- The Hudson scope
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |