Hi, I hope it's not too late to change public API of the Ignite Plugin feature.
I have next suggestions: 1. PluginConfiguration interface have only one method Class<? extends PluginProvider> providerClass(); and we have processing code, which try to instantiate PliginProvider with 3 types of constructors (in this order): constructor with PluginContext as parameter, constructor with PluginConfiguration as parameter and default constructor. It seems to me that there is no a reason for user to don't apply already created PluginContext, which have all needed information. I suggest another method PluginProvider createProvider(PluginContext ctx); I additional, I want to note that if user want to create own plugin then he has to extend PluginConfiguration (there is no way to implement just PluginProvider without PluginConfiguration). 2. PluginContext suggestions - "configuration" method (return PluginConfiguration) rename to "pluginConfiguration"; - "grid" method (return Ignite) rename to "ignite" - to delete next methods, because all of them can be gotten from Ignite: igniteConfiguration, nodes, localNode, log. -- Artem --
