Esempio n. 1
0
        public override async void RunTask()
        {
            Output("Retrieving submodules");
            List <String> submodules = await Git.GetSubmodules(this.Repo);

            Output($"{submodules.Count} submodules found");

            if (this.ModifiedOnly)
            {
                Output("Retrieving modified submodules");
                submodules = await Git.GetModifiedSubmodules(this.Repo, submodules, this.TreatUninitializedSubmodulesAsModified);

                Output($"{submodules.Count} modified submodules found");
            }

            IEnumerable <ProcessProgressTask> tasks = submodules.Select(this.GetTaskForSubmodule);

            OnProgressCompleted(new ProgressCompletedEventArgs(tasks));
        }
        private async void FastSubmoduleUpdateForm_Shown(object?sender, EventArgs e)
        {
            LOG.Debug(nameof(FastSubmoduleUpdateForm_Shown));

            LOG.Debug($"{nameof( FastSubmoduleUpdateForm_Shown )} - Get Submodules - Start");
            foreach (String submodule in await Task.Run(() => Git.GetSubmodules(Repo)))
            {
                LOG.Debug($"Submodule - {submodule}");
                _submodules.Add(submodule);
                _checkedSubmodules[submodule] = true;
                SubmoduleCheckList.Items.Add(submodule);
            }
            LOG.Debug($"{nameof( FastSubmoduleUpdateForm_Shown )} - Get Submodules - End");

            UpdateChecked();

            LOG.Debug($"{nameof( FastSubmoduleUpdateForm_Shown )} - Get Modified Submodules - Start");
            try
            {
                _modifiedSubmodules = await Task.Run(() => Git.GetModifiedSubmodules(Repo, _submodules, Settings.Default.TreatUninitializedSubmodulesAsModified));
            }
            catch (Exception ex)
            {
                LOG.Error("An error occured while retrieving modified submodules.", ex);
            }
            LOG.Debug($"{nameof( FastSubmoduleUpdateForm_Shown )} - Get Modified Submodules - End");

            SelectModifiedSubmodules.Text           = "Select Modified Submodules";
            SelectModifiedSubmodules.Enabled        = true;
            ShowModifiedSubmodulesOnlyCheck.Enabled = true;

            UpdateSubmoduleList();

            if (!_userModified)
            {
                if (Settings.Default.FastSubmoduleUpdateCheckModifiedSubmodulesByDefault)
                {
                    SetModifiedSubmodulesChecked();
                }
            }
        }