Free cookie consent management tool by TermsFeed Policy Generator

source: branches/2924_DotNetCoreMigration/HeuristicLab.PluginInfrastructure/3.3/Interfaces/IAssemblyLoader.cs @ 16859

Last change on this file since 16859 was 16859, checked in by dpiringe, 5 years ago

#2924:

  • migrated PluginInfrastructure to .NET Standard
  • created a new .NET Core project HeuristicLab.PluginInfrastructure.Runner, which contains the logic to load and isolate assemblies, based on the new interfaces from HeuristicLab.PluginInfrastructure
  • recycled old plugin validation code
File size: 973 bytes
Line 
1using System;
2using System.Collections.Generic;
3using System.Reflection;
4using System.Text;
5
6namespace HeuristicLab.PluginInfrastructure {
7  public interface IAssemblyLoader {
8    string BasePath { get; set; }
9
10    /// <summary>
11    /// Returns all loaded assemblies.
12    /// </summary>
13    IEnumerable<Assembly> Assemblies { get; }
14    /// <summary>
15    /// Returns all types.
16    /// </summary>
17    IEnumerable<Type> Types { get; }
18
19    /// <summary>
20    /// Returns all assemblies included in BasePath.
21    /// </summary>
22    /// <returns></returns>
23    IEnumerable<Assembly> GetReflectionOnlyAssemblies();
24
25    /// <summary>
26    /// Loads all assembliesm which are given by the assemblyName argument, into the current context.
27    /// </summary>
28    /// <param name="assemblyNames"></param>
29    /// <returns>All loaded assemblies.</returns>
30    IEnumerable<Assembly> LoadAssemblies(IEnumerable<AssemblyName> assemblyNames);
31
32  }
33}
Note: See TracBrowser for help on using the repository browser.