/// <summary> /// Initializes a new instance of the <see cref="PluginLoader"/> class. /// </summary> public PluginLoader() { this.DirectoryCatalogues = new List <DirectoryCatalog>(); var directoryInfo = PluginUtilities.PluginDirectoryExists(out _); if (directoryInfo.Exists) { this.GetManifests(); this.GetDisabledPlugins(); foreach (var manifest in this.ManifestsList.Where(m => !this.DisabledPlugins.Contains(m.ProjectGuid))) { var path = Path.Combine(directoryInfo.FullName, manifest.Name); if (Directory.Exists(path)) { this.LoadPlugins(path); } } } }
/// <summary> /// Sets the <see cref="ManifestsList"/> property /// </summary> private void GetManifests() { this.ManifestsList = PluginUtilities.GetPluginManifests(); }