Agree with Vladimir. Start/stop order should be flexible.

--Yakov

2015-07-07 10:03 GMT+03:00 Vladimir Ozerov <[email protected]>:

> Igniters,
>
> Ignite allows external parties to add plugins. Currently plugins are
> started at the very end of start process, and they are stopped before all
> other components.
>
> This is a problem because sometimes we need to stop plugin AFTER all other
> components. not BEFORE. E.g. consider a plugin which provides an
> environment for custom cache store, and this store has "write-behind"
> enabled. In this case we will stop plugin before write-behind store flushed
> all data what leads to unexpected behavior.
>
> It seems that we must provide more callbacks so that plugins could be
> notified both before and after all other components are started/stopped.
>
> I looked at the code and found that IgnitePluginProcessor is a very good
> candidate for this - it starts very early and has access to all plugins.
> What if we add the following methods to PluginProvider interface:
> onPluginProcessorStart() - called from IgnitePluginProcessor.start();
> onPluginProcessorStop() - called from IgnitePluginProcessor.stop().
>
> Vladimir.
>

Reply via email to