Example #1
0
        protected override bool ExecuteAllCore()
        {
            if (SelectedNode == null || SelectedNode.Extensions == null || SelectedNode.Extensions.Count == 0)
            {
                return(false);
            }

            ShowProgressWindow();

            _activePackageManager = GetActivePackageManager();
            Debug.Assert(_activePackageManager != null);

            IDisposable action = _activePackageManager.SourceRepository.StartOperation(OperationName, mainPackageId: null, mainPackageVersion: null);

            try
            {
                IList <PackageOperation> allOperations;
                IList <IPackage>         allUpdatePackagesByDependencyOrder;
                bool accepted = ShowLicenseAgreementForAllPackages(_activePackageManager, out allOperations, out allUpdatePackagesByDependencyOrder);
                if (!accepted)
                {
                    return(false);
                }

                RegisterPackageOperationEvents(_activePackageManager, null);

                _activePackageManager.UpdateSolutionPackages(
                    allUpdatePackagesByDependencyOrder,
                    allOperations,
                    updateDependencies: true,
                    allowPrereleaseVersions: IncludePrerelease,
                    logger: this,
                    eventListener: this);

                return(true);
            }
            finally
            {
                UnregisterPackageOperationEvents(_activePackageManager, null);
                action.Dispose();
            }
        }
        protected override bool ExecuteAllCore()
        {
            if (SelectedNode == null || SelectedNode.Extensions == null || SelectedNode.Extensions.Count == 0)
            {
                return false;
            }

            ShowProgressWindow();

            _activePackageManager = GetActivePackageManager();
            Debug.Assert(_activePackageManager != null);

            IDisposable action = _activePackageManager.SourceRepository.StartOperation(OperationName, mainPackageId: null, mainPackageVersion: null);

            try
            {
                List<PackageOperation> allOperations;
                bool accepted = ShowLicenseAgreementForAllPackages(_activePackageManager, out allOperations);
                if (!accepted)
                {
                    return false;
                }

                RegisterPackageOperationEvents(_activePackageManager, null);

                var allUpdatePackages = SelectedNode.GetPackages(String.Empty, IncludePrerelease);
                _activePackageManager.UpdateSolutionPackages(
                    allUpdatePackages,
                    allOperations,
                    updateDependencies: true,
                    allowPrereleaseVersions: IncludePrerelease,
                    logger: this,
                    eventListener: this);

                return true;
            }
            finally
            {
                UnregisterPackageOperationEvents(_activePackageManager, null);
                action.Dispose();
            }
        }