private DinazorBootstrapper([Annotations.NotNullAttribute] Type startupModule, [Annotations.NotNullAttribute] IIocManager iocManager) { Check.NotNull(startupModule, nameof(startupModule)); Check.NotNull(iocManager, nameof(iocManager)); if (!typeof(DinazorModule).IsAssignableFrom(startupModule)) { throw new ArgumentException($"{nameof(startupModule)} should be derived from {nameof(DinazorModule)}."); } StartupModule = startupModule; IocManager = iocManager; PluginSources = new PluginSourceList(); _logger = NullLogger.Instance; }
public static void AddTypeList(this PluginSourceList list, params Type[] moduleTypes) { list.Add(new PluginTypeListSource(moduleTypes)); }
public static void AddFolder(this PluginSourceList list, string folder, SearchOption searchOption = SearchOption.TopDirectoryOnly) { list.Add(new FolderPluginSource(folder, searchOption)); }