nextflow.plugin
The nextflow.plugin
package implements the plugin manager.
Class Diagram
classDiagram
%%
%% nextflow.plugin
%%
CmdRun --> Plugins : run
Plugins --> PluginsFacade : init
PluginsFacade "1" --> "*" PluginSpec : load
class PluginSpec {
id : String
version : String
}
Note
Some classes may be excluded from the above diagram for brevity.
Notes
The plugin system uses the PF4J library, which allows for extension classes to be loaded at runtime. Each plugin includes a manifest of extension classes, all of which extend or implement some base class in Nextflow. The Plugins
class can be used to query the available extensions for a given base class. Extensions can be assigned a priority using the @Priority
annotation, to ensure that certain extensions are used over others when available.