using System; using System.Collections.Generic; using System.Linq; using System.Text; using Wox.Plugin; namespace Wox.PluginLoader { public class BasePluginLoader : IPluginLoader where T : BasePlugin, new() { public virtual List LoadPlugin(List pluginMetadatas) { T pluginWrapper = new T(); List metadatas = pluginMetadatas.Where(o => pluginWrapper.SupportedLanguage.ToUpper() == o.Language.ToUpper()).ToList(); return metadatas.Select(metadata => new PluginPair() { Plugin = pluginWrapper, Metadata = metadata }).ToList(); } } }