//Delegados para agregar nuevos monitores a la lista
 public void AddServiceMonitorData(ServiceMonitor monitor, object sender)
 {
     if (sender != null)
     {
         ((Form)sender).Invoke((MethodInvoker)delegate { addServiceMonitorData(monitor); });
         return;
     }
 }
        private void addServiceMonitorData(ServiceMonitor monitor)
        {
            DataRow targetRow = serviceDataTable.NewRow();

            targetRow[0] = monitor.name;
            targetRow[1] = monitor.remoteMachine;
            targetRow[2] = monitor.target;
            targetRow[6] = monitor.critic.ToString();
            targetRow[7] = monitor.enable.ToString();

            if (_updateAndCheck)
            {
                targetRow[3] = monitor.actualStatus.ToString();
                targetRow[4] = monitor.actualState.ToString();
                targetRow[5] = monitor.actualStartMode.ToString();
            }

            serviceDataTable.Rows.Add(targetRow);
        }
Exemple #3
0
        private ServiceMonitor createNewServiceMonitor()
        {
            string targetName = ((List<TaskMonitor.Sources.ServiceTools.Service>)this.listBox_results.DataSource)[this.listBox_results.SelectedIndex].Name;
            ServiceState? selectedState = null;
            ServiceStatus? selectedStatus = null;
            ServiceStartMode? selectedStartMode = null;
            bool selectedCritic;

            switch(this.comboBox_serv_state.SelectedIndex)
            {
                case 0: selectedState = ServiceState.Running; break;
                case 1: selectedState = ServiceState.Paused; break;
                case 2: selectedState = ServiceState.Stopped; break;
                case 3: selectedState = ServiceState.NotFound; break;
                case 4: selectedState = null; break;
            }

            switch(this.comboBox_serv_status.SelectedIndex)
            {
                case 0: selectedStatus = ServiceStatus.OK; break;
                case 1: selectedStatus = ServiceStatus.Error; break;
                case 2: selectedStatus = null; break;
            }

            switch(this.comboBox_serv_startMode.SelectedIndex)
            {
                case 0: selectedStartMode = ServiceStartMode.Auto; break;
                case 1: selectedStartMode = ServiceStartMode.Manual; break;
                case 2: selectedStartMode = ServiceStartMode.Disabled; break;
                case 3: selectedStartMode = null; break;
            }

            selectedCritic = (this.comboBox_serv_critic.SelectedText == "Si");

            if(selectedState == null && selectedStatus == null && selectedStartMode == null)
                return null;

            ServiceMonitor monitor = new ServiceMonitor(this.textBox_monitorName.Text, targetName ,this.textBox_machineName.Text, this.textBox_username.Text,
                                                        this.textBox_password.Text, this.textBox_domain.Text, selectedState, selectedStatus, selectedStartMode,
                                                        selectedCritic);

            return monitor;
        }