Example #1
0
 public bool HasPlugins(string path)
 {
     AppDomain.CurrentDomain.ReflectionOnlyAssemblyResolve += new ResolveEventHandler(CurrentDomain_ReflectionOnlyAssemblyResolve);
     System.Reflection.Assembly a = System.Reflection.Assembly.ReflectionOnlyLoadFrom(path);
     foreach (Type t in a.GetExportedTypes())
     {
         if (MetaPlugin.IsPlugin(t))
         {
             return(true);
         }
     }
     return(false);
 }
Example #2
0
 private void ProbeAssembly(System.Reflection.Assembly a)
 {
     foreach (Type t in a.GetExportedTypes())
     {
         if (MetaPlugin.IsPlugin(t))
         {
             MetaPlugin plugin = new MetaPlugin(t);
             if (!plugins.ContainsKey(plugin.Name))
             {
                 plugins.Add(plugin.Name, plugin);
                 Logger.Info("Found plugin: " + plugin);
             }
             else
             {
                 Logger.Info("Already have plugin: " + plugin);
             }
         }
     }
 }
Example #3
0
 private void ProbeAssembly(System.Reflection.Assembly a)
 {
     foreach (Type t in a.GetExportedTypes())
     {
         if (MetaPlugin.IsPlugin(t))
         {
             MetaPlugin plugin = new MetaPlugin(t);
             if (!plugins.ContainsKey(plugin.Name))
             {
                 plugins.Add(plugin.Name, plugin);
                 Logger.Info("Found plugin: " + plugin);
             }
             else
                 Logger.Info("Already have plugin: " + plugin);
         }
     }
 }