/// <summary> /// Administra configuracion mediante las acciones /// que se establecieron para determinados plugins /// </summary> /// <param name="obj"></param> private void Configure(IPlugin obj) { string id = obj.GetType().FullName; if (PluginsConfigure.ContainsKey(id)) { PluginsConfigure[id].DynamicInvoke(obj); } }
/// <summary> /// Register a configuration for a plugin /// </summary> /// <typeparam name="TPlugin"></typeparam> /// <param name="action"></param> /// <returns></returns> public PluginLoader When <TPlugin>(Action <TPlugin> action) { PluginsConfigure.Add(typeof(TPlugin).FullName, action); return(this); }