public async Task Load(IStringDownloader downloader, Uri uri) { Uri = uri; var config = await SyncEvilGlobal.Yaml.GetYaml<SixRepoConfigDto>(uri).ConfigureAwait(false); Mods = config.Mods; Hosts = config.Hosts.ToList(); Loaded = true; }
public virtual async Task LoadConfigRemote(IStringDownloader downloader) { var uri = Tools.Transfer.JoinUri(Uri, Repository.ConfigFileName); var data = await downloader.DownloadAsync(uri).ConfigureAwait(false); Config = SyncEvilGlobal.Yaml.NewFromYaml <SixRepoConfig>(data); if (Config.Hosts.Length == 0) { Config.Hosts = new[] { Uri } } ; Servers = (await Config.Servers.SelectAsync(y => GetServer(y, downloader))).ToDictionary(x => x.Key, x => x.Value); } async Task <KeyValuePair <string, SixRepoServer> > GetServer(string y, IStringDownloader downloader) { var uri = GetUri(y); try { return(new KeyValuePair <string, SixRepoServer>(y, SyncEvilGlobal.Yaml.NewFromYaml <SixRepoServer>(await downloader.DownloadAsync(uri).ConfigureAwait(false)))); } catch (WebException e) { throw new TransferError( $"Problem while trying to access: {uri.AuthlessUri()}\n{e.Message}", e); } }
public EvilGlobalServices(IFileDownloadHelper downloadHelper, IFileDownloader fileDownloader, IStringDownloader stringDownloader, Func<ExportLifetimeContext<IHostChecker>> getHostChecker) { DownloadHelper = downloadHelper; Downloader = fileDownloader; StringDownloader = stringDownloader; GetHostChecker = getHostChecker; }
public async Task Load(IStringDownloader downloader, Uri uri) { Uri = uri; var config = await SyncEvilGlobal.Yaml.GetYaml <SixRepoConfigDto>(uri).ConfigureAwait(false); Mods = config.Mods; Hosts = config.Hosts.ToList(); Loaded = true; }
public EvilGlobalServices(IFileDownloadHelper downloadHelper, IFileDownloader fileDownloader, IStringDownloader stringDownloader, Func <ExportLifetimeContext <IHostChecker> > getHostChecker, Lazy <IYamlUtil> yaml) { DownloadHelper = downloadHelper; Downloader = fileDownloader; StringDownloader = stringDownloader; GetHostChecker = getHostChecker; Yaml = yaml; }
public SearchService(DtoDownloader stringDownloader, IStringDownloader rawHttp) { _dtos = stringDownloader; _rawHttp = rawHttp; }
public UserInformationService(DtoDownloader downloader, IStringDownloader stringDownloader) { _downloader = downloader; _rawHttp = stringDownloader; }
public async Task Load(IStringDownloader downloader) { var config = await Tools.Transfer.GetYaml<SixRepoConfigDto>(_uri).ConfigureAwait(false); Mods = config.Mods; Hosts.Replace(config.Hosts); }