private static string GetAppDependencyPackageFileName( string packageFileName, AppDependency depend, IAppManifestInfo info) { var path1 = Path.Combine(Path.GetDirectoryName(packageFileName), "Dependencies"); var str = Path.Combine(path1, info.ProcessorArchitecture); var strArray = new[] { Path.GetDirectoryName(packageFileName), str, path1, Constants.WindowsPhoneApp81SDKRoot }; foreach (var directory in strArray) { var requirementInDirectory = FindMatchinDependencyRequirementInDirectory( packageFileName, directory, depend); if (!string.IsNullOrEmpty(requirementInDirectory)) { return requirementInDirectory; } } return null; }
private static string GetAppDependencyPackageFileName( string packageFileName, AppDependency depend, IAppManifestInfo info) { var path1 = Path.Combine(Path.GetDirectoryName(packageFileName), "Dependencies"); var str = Path.Combine(path1, info.ProcessorArchitecture); var strArray = new[] { Path.GetDirectoryName(packageFileName), str, path1, Constants.WindowsPhoneApp81SDKRoot }; foreach (var directory in strArray) { var requirementInDirectory = FindMatchinDependencyRequirementInDirectory( packageFileName, directory, depend); if (!string.IsNullOrEmpty(requirementInDirectory)) { return(requirementInDirectory); } } return(null); }
private static bool DoesPackageFileMatchDependencyRequirement(string fileNameToCheck, AppDependency depend) { // NOTE: Uses patched Utils var appManifestInfo = Utils.ReadAppManifestInfoFromPackage(fileNameToCheck); if (StringComparer.InvariantCultureIgnoreCase.Equals(appManifestInfo.Name, depend.Name)) { return appManifestInfo.AppVersion >= depend.MinVersion; } return false; }
private static string FindMatchinDependencyRequirementInDirectory( string packageFileName, string directory, AppDependency depend) { if (!Directory.Exists(directory)) { return null; } foreach (var str in Directory.GetFiles(directory, "*.appx", SearchOption.AllDirectories)) { if (!StringComparer.InvariantCultureIgnoreCase.Equals(packageFileName, str) && DoesPackageFileMatchDependencyRequirement(str, depend)) { return str; } } return null; }
private static string FindMatchinDependencyRequirementInDirectory( string packageFileName, string directory, AppDependency depend) { if (!Directory.Exists(directory)) { return(null); } foreach (var str in Directory.GetFiles(directory, "*.appx", SearchOption.AllDirectories)) { if (!StringComparer.InvariantCultureIgnoreCase.Equals(packageFileName, str) && DoesPackageFileMatchDependencyRequirement(str, depend)) { return(str); } } return(null); }
private static bool DoesPackageFileMatchDependencyRequirement(string fileNameToCheck, AppDependency depend) { // NOTE: Uses patched Utils var appManifestInfo = Utils.ReadAppManifestInfoFromPackage(fileNameToCheck); if (StringComparer.InvariantCultureIgnoreCase.Equals(appManifestInfo.Name, depend.Name)) { return(appManifestInfo.AppVersion >= depend.MinVersion); } return(false); }