Esempio n. 1
0
        public void AddPackageDownloadToFramework(string packageFramework, params SimpleTestPackageContext[] packages)
        {
            var framework = Frameworks
                            .Where(f => f.Framework == NuGetFramework.Parse(packageFramework))
                            .First();

            framework.PackageDownloads.AddRange(packages);
        }
        public override bool Execute()
        {
            var frameworks       = new List <ITaskItem> ();
            var hotRestartClient = new HotRestartClient();

            foreach (var framework in Frameworks.Where(f => Path.GetExtension(f.ItemSpec.TrimEnd('\\')) == ".framework"))
            {
                framework.ItemSpec = framework.ItemSpec.TrimEnd('\\');

                if (frameworks.Any(x => x.ItemSpec == framework.ItemSpec))
                {
                    continue;
                }

                var frameworkDirName = Path.GetFileName(framework.ItemSpec);

                try {
                    var frameworkPath = Path.Combine(framework.ItemSpec, Path.GetFileNameWithoutExtension(frameworkDirName));

                    hotRestartClient.LoadDynamicFramework(frameworkPath);
                } catch (AppleInvalidFrameworkException frameworkEx) {
                    Log.LogMessage(MessageImportance.Normal, Resources.CollectDynamicFrameworks_InvalidFramework, Path.GetFileName(framework.ItemSpec), frameworkEx.Message);
                    continue;
                } catch (Exception ex) {
                    Log.LogErrorFromException(ex);
                    break;
                }

                framework.SetMetadata("FrameworkDir", $@"{frameworkDirName}\");

                frameworks.Add(framework);
            }

            DynamicFrameworks = frameworks.ToArray();

            return(!Log.HasLoggedErrors);
        }