Blacker.MangaScraper.ScraperLoader.Reload C# (CSharp) Метод

Reload() публичный Метод

public Reload ( ) : void
Результат void
        public void Reload()
        {
            try
            {
                if (_pluginsAppDomain != null)
                {
                    AppDomain.Unload(_pluginsAppDomain);
                }

                _pluginsAppDomain = AppDomain.CreateDomain("Blacker.Scrapers.AppDomain");

                ReflectionHelper.LoadAssembliesFromDir(_pluginsAppDomain, "*.Scraper.dll");

                var factories = ReflectionHelper.GetInstances<IScraperFactory>(_pluginsAppDomain);

                _scrapers = ReflectionHelper
                    .GetInstances<IScraper>(_pluginsAppDomain, new[] {typeof (IScraperIgnore)})
                    .Concat(factories.SelectMany(f => f.GetScrapers()))
                    .Concat(new[] {new RecentMangaScraper()})
                    .ToList();

                _downloadFormatProviders = ReflectionHelper
                    .GetInstances<IDownloadFormatProvider>(_pluginsAppDomain)
                    .OrderBy(dfp => dfp.Priority)
                    .ToList();
            }
            catch (Exception ex)
            {
                _log.Error("Unable to load scrapers and download providers.", ex);

                throw;
            }
        }