public SoftwarePackage( string packageName, IEnumerable <string> dependencies, ISoftwareProvider provider, IOperatingSystemProvider operatingSystem, string?name = null) { PackageName = packageName; Dependencies = dependencies; Name = name; this.provider = provider; this.operatingSystem = operatingSystem; }
public Downloader(MainViewModel mainViewModel, IBuildProvider buildProvider, IMatchProvider matchProvider, ISoftwareProvider softwareProvider, IDownloadProvider downloadProvider, IDownloadService downloadService, IExtractService extractService, IMetadataService metadataService, ILogger <Downloader> logger) { Logger = logger; MainViewModel = mainViewModel; BuildProvider = buildProvider; MatchProvider = matchProvider; SoftwareProvider = softwareProvider; DownloadProvider = downloadProvider; DownloadService = downloadService; ExtractService = extractService; MetadataService = metadataService; }
public SoftwarePackage( KeyValuePair <object, object> yaml, ISoftwareProvider provider, IOperatingSystemProvider operatingSystem) { if (yaml.Key is string key) { PackageName = key; } else { PackageName = string.Empty; throw new Exception("YAML key is not a string"); } if (yaml.Value is Dictionary <object, object> dict) { if (dict.ContainsKey("name") && dict["name"] is string name) { Name = name; } if (dict.ContainsKey("dependencies")) { Dependencies = (from d in dict["dependencies"] as List <object> select d as string).ToList(); } } this.provider = provider; this.operatingSystem = operatingSystem; if (Dependencies == null) { Dependencies = Enumerable.Empty <string>(); } }