Beispiel #1
0
        protected override void ProcessRecord()
        {
            ManagementPackRuleCriteria criteria = new ManagementPackRuleCriteria(Filter);

            foreach (WorkflowSubscriptionBase ws in _mg.Subscription.GetSubscriptionsByCriteria(criteria))
            {
                WriteObject(ws);
            }
        }
Beispiel #2
0
        private void SetRuleStatus(bool bEnabled)
        {
            EnterpriseManagementGroup emg        = new EnterpriseManagementGroup(txtManagementServer.Text);
            string strRuleCriteria               = "Name LIKE 'NotificationSubscription%'";
            ManagementPackRuleCriteria mprc      = new ManagementPackRuleCriteria(strRuleCriteria);
            IList <ManagementPackRule> listRules = emg.Monitoring.GetRules(mprc);
            double dRulesCount = listRules.Count;
            double i           = 0;

            pbProgress.Value = 0;
            pbProgress.Style = ProgressBarStyle.Continuous;
            pbProgress.Show();
            //TODO: Undo this MP hackery.
            ManagementPack mp = null;

            foreach (ManagementPackRule rule in listRules)
            {
                i++;
                if (rule.Enabled != ManagementPackMonitoringLevel.@false && bEnabled == false)
                {
                    rule.Enabled = ManagementPackMonitoringLevel.@false;
                    rule.Status  = ManagementPackElementStatus.PendingUpdate;
                    //TODO: Undo this MP hackery.
                    mp = rule.GetManagementPack();
                }
                else if (rule.Enabled != ManagementPackMonitoringLevel.@true && bEnabled == true)
                {
                    rule.Enabled = ManagementPackMonitoringLevel.@true;
                    rule.Status  = ManagementPackElementStatus.PendingUpdate;
                    //TODO: Undo this MP hackery.
                    mp = rule.GetManagementPack();
                }
                double dProgress = i / (dRulesCount) * 100;
                pbProgress.Value = (int)dProgress;
            }
            pbProgress.Style = ProgressBarStyle.Marquee;
            lblStatus.Text   = "Accepting changes to MP...";
            mp.AcceptChanges();
            pbProgress.Style    = ProgressBarStyle.Continuous;
            pbProgress.Value    = 100;
            lblStatus.Text      = "Done!";
            lblStatus.ForeColor = Color.Red;
            lblStatus.Height    = lblStatus.Height * 3;

            return;
        }