Esempio n. 1
0
        private void updateListViewer1_QuicklyApproveUpdate(UpdateCollection udpatesToApprove, MetaGroup metaGroup)
        {
            FrmApprovalSet approvalForm = new FrmApprovalSet(_metaGroups, _computerGroups, udpatesToApprove);

            approvalForm.QuicklyApprove(metaGroup);
            updateDetailViewer1.RunningLongOperation(true);
            updateListViewer1.RunningLongOperation(true);
            foreach (IUpdate updateToApprove in updateDetailViewer1.ViewedUpdates)
            {
                foreach (ApprovalObject approval in approvalForm.Approvals)
                {
                    _wsus.ApproveUpdateForInstallation(approval.GroupId, updateToApprove);

                    updateDetailViewer1.Refresh();
                    updateListViewer1.Refresh();
                    this.Refresh();
                    System.Threading.Thread.Sleep(50);
                }
            }
            updateDetailViewer1.RunningLongOperation(false);
            updateListViewer1.RunningLongOperation(false);
        }
Esempio n. 2
0
        private void updateDetailViewer1_ApproveUpdate(UpdateCollection updatesToApprove)
        {
            this.Cursor = Cursors.WaitCursor;
            FrmApprovalSet approvalForm = new FrmApprovalSet(_metaGroups, _computerGroups, updatesToApprove);

            approvalForm.ShowDialog(this);
            if (approvalForm.DialogResult == DialogResult.OK)
            {
                updateDetailViewer1.RunningLongOperation(true);
                updateListViewer1.RunningLongOperation(true);
                foreach (IUpdate updateToApprove in updateDetailViewer1.ViewedUpdates)
                {
                    foreach (ApprovalObject approval in approvalForm.Approvals)
                    {
                        switch (approval.Approval)
                        {
                        case ApprovalObject.Approvals.ApproveForInstallation:
                            if (approval.HasDeadLine && !updateToApprove.InstallationBehavior.CanRequestUserInput)
                            {
                                _wsus.ApproveUpdateForInstallation(approval.GroupId, updateToApprove, approval.DeadLine.ToUniversalTime());
                            }
                            else
                            {
                                _wsus.ApproveUpdateForInstallation(approval.GroupId, updateToApprove);
                            }
                            break;

                        case ApprovalObject.Approvals.ApproveForOptionalInstallation:
                            _wsus.ApproveUpdateForOptionalInstallation(approval.GroupId, updateToApprove);
                            break;

                        case ApprovalObject.Approvals.ApproveForUninstallation:
                            if (approval.HasDeadLine && !updateToApprove.InstallationBehavior.CanRequestUserInput)
                            {
                                _wsus.ApproveUpdateForUninstallation(approval.GroupId, updateToApprove, approval.DeadLine.ToUniversalTime());
                            }
                            else
                            {
                                _wsus.ApproveUpdateForUninstallation(approval.GroupId, updateToApprove);
                            }
                            break;

                        case ApprovalObject.Approvals.NotApproved:
                            _wsus.DisapproveUpdate(approval.GroupId, updateToApprove);
                            break;

                        case ApprovalObject.Approvals.Unchanged:
                            break;

                        default:
                            break;
                        }
                        updateDetailViewer1.Refresh();
                        updateListViewer1.Refresh();
                        this.Refresh();
                        System.Threading.Thread.Sleep(50);
                    }
                }
                updateDetailViewer1.RunningLongOperation(false);
                updateListViewer1.RunningLongOperation(false);
            }
            this.Cursor = Cursors.Default;
        }