Ejemplo n.º 1
0
 private void SearchAssembly(Assembly assembly, Dictionary <Type, object> potentialParams)
 {
     foreach (Module module in assembly.Modules)
     {
         foreach (Type t in module.GetTypes())
         {
             try
             {
                 if (t.IsClass && !t.IsAbstract && iYalvPluginType.IsAssignableFrom(t))
                 {
                     IYalvPlugin plugin = Create(t, potentialParams);
                     if (plugin.IsEnabled)
                     {
                         log.Info(string.Format("Plugin {0} ({1}) added", t.Name, plugin.Information));
                         _plugins.Add(plugin);
                     }
                     else
                     {
                         log.Info(string.Format("Plugin {0} ({1}) is not enabled", t.Name, plugin.Information));
                     }
                 }
             }
             catch (Exception ex)
             {
                 log.Warn(string.Format("Error while loading plugin of type {0} in assembly {1}", t.FullName, assembly), ex);
             }
         }
     }
 }
Ejemplo n.º 2
0
 public PluginInfoViewModel(IYalvPlugin plugin)
 {
     this.plugin = plugin;
 }