[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [FR-devel] Plugin dependencies proposal
From: |
Rich Kilmer |
Subject: |
RE: [FR-devel] Plugin dependencies proposal |
Date: |
Wed, 6 Nov 2002 13:40:15 -0500 |
<SNIP>
> > What I propose is this:
> > -----
> > PluginA cannot load
> > until PluginX is LOADED and PluginY is LOADED
> >
> > Which would automatically infer:
> >
> > PluginA needs to be UNLOADED
> > before PluginX is UNLOADED and PluginY is UNLOADED
> > -----
> > And you could also would repeat for LOADED/start.
>
> Would it make sense to simplify this even further by only
> dealing with STARTED. In other words, my plugin cannot LOAD
> until both pluginX and pluginY have STARTED.
>
> Can you think of a legitimate case where this would be
> insufficient? If not, then we could simply say that my plugin
> is dependent on a list of other plugins.
>
That's what I was thinking. I will research how eclipse handles it.
We need a dependency for transitioning to LOADED (based on other plugins
being LOADED) and RUNNING (based on other plugins running). The
tear-down operation would just be the opposite.
be something like this (in YAML)
--- !ruby/object:FreeBASE::PluginConfiguration
name: SourceParser
version: 1.0
autoload: (true)
require_path: plugins/SourceParser/SourceParser.rb
startup_module: FreeRIDE::Tools::SourceParser
dependencies:
- !ruby/object:FreeBASE::DependencyConfiguration
state: LOADED
depends_on:
- plugin: GuiCore
version: "*"
or in XML
<plugin name="SourceParser" version="1.0" autoload="true">
<require>plugins/SourceParser/SourceParser.rb</require>
<module>FreeRIDE::Tools::SourceParser</module>
<dependency state="LOADED">
<depends_on plugin="GuiCore" version="*"/>
</dependency>
</plugin>
-Rich