示例#1
0
        private void AddMissingManagementAgents()
        {
            foreach (ManagementAgent ma in ManagementAgent.GetManagementAgents())
            {
                bool found = false;

                foreach (MAControllerConfiguration config in this.ManagementAgents)
                {
                    if (config.ManagementAgentID == ma.ID)
                    {
                        found = true;
                        break;
                    }
                }

                if (!found)
                {
                    MAControllerConfiguration p = new MAControllerConfiguration(ma.Name, ma.ID);
                    p.Disabled = true;
                    p.ResolvePartitions(ma);
                    MAConfigDiscovery.AddDefaultTriggers(p, ma);

                    this.ManagementAgents.Add(p);
                }
            }
        }
示例#2
0
        internal static IEnumerable <ManagementAgent> GetManagementAgents()
        {
            maCache.Clear();

            foreach (ManagementAgent ma in ManagementAgent.GetManagementAgents())
            {
                maCache.Add(ma.Name, ma);
            }

            return(maCache.Values);
        }
示例#3
0
        private void InitializeMAControllers()
        {
            this.controllers = new Dictionary <Guid, MAController>();

            foreach (ManagementAgent ma in ManagementAgent.GetManagementAgents())
            {
                MAController x = new MAController(ma);
                x.StateChanged += this.X_StateChanged;
                x.RunProfileExecutionComplete += this.X_RunProfileExecutionComplete;
                x.MessageLogged += this.X_MessageLogged;

                this.controllers.Add(ma.ID, x);
            }
        }