public interface IPlugin
{
public bool execute();
}
All my "parts" implement this IPlugin interface. My parts obviously have Import/Export requirements/offerings.
I'm writing a build+config system, in which the user dynamically selects what he/she wants, which translates to a set of plugins being called.
For example, here's a list of plugins:
(1) Install X ... exports "XTypeInstalled"
(2) Configure X ... imports "XTypeInstalled", exports "XTypeConfigured"
(3) Install Y ... imports "XTypeConfigured"
(4) Install Z
(5) Configure A
Now, a user could select (1), (3), and (4) ... or could select (1), (2), (3)
The problem I'm facing is, do all my plugin writers now need to implement IPartImportsSatisfiedNotification? If not, and the user selects a workflow of (1), (2), and (3) ... how do I get to calling (3)'s execute() method.
Am I making sense?!