protected virtual void OnPluginUnloaded(PluginUnloadedEventArgs e) { if (this.EventsEnabled) { var evnt = this.PluginUnloaded; if (evnt != null) { evnt(this, e); } } }
public void UnloadPlugin(IPlugin plugin) { if (!ListPlugins.Contains(plugin)) { return; } EventsManager.UnregisterEvents(plugin); ListPlugins.Remove(plugin); PluginUnloadedEventArgs unloadedEventArgs = new PluginUnloadedEventArgs(plugin); EventsManager.CallEvent(unloadedEventArgs); }
private void Unload(PluginInfo info, PluginParameters results, bool execCancelled, object execCancelledReason) { if (info != null) { try { AppDomain.Unload(info.Domain); } catch (AppDomainUnloadedException) { } this._currentInfoList.Remove(info); PluginUnloadedEventArgs pluginUnloadedArgs = new PluginUnloadedEventArgs(info, results, execCancelled, execCancelledReason); this.OnPluginUnloaded(pluginUnloadedArgs); } }
private void Loader_PluginUnloaded(object sender, PluginUnloadedEventArgs e) { var providers = e.Plugin.Context.ApplicationContext.OptionManager.Providers; var found = providers.FirstOrDefault(provider => { var proxy = provider as ConfigurationProxy; return(proxy != null && proxy.IsValueCreated && string.Equals(proxy.Value.FilePath, OptionUtility.GetConfigurationFilePath(e.Plugin))); }); if (found != null) { providers.Remove(found); } }
protected virtual void OnPluginUnloaded(PluginUnloadedEventArgs e) { if (this.EventsEnabled) { var evnt = this.PluginUnloaded; if (evnt != null) evnt(this, e); } }
private void PluginUnloaded(object sender, PluginUnloadedEventArgs e) { TaskHelper.Run(() => pluginViews.Remove(e.PluginView), taskScheduler); }