private void llblRawEdit_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { if (SelectedEntry != null) { SelectedEntry.Name = txtName.Text; SelectedEntry.Enabled = chkEnabled.Checked; INotifierConfig conf = (INotifierConfig)SelectedEntry.AgentConfig; RAWXmlEditor editor = new RAWXmlEditor(); string oldMarkUp = conf.ToXml(); editor.SelectedMarkup = oldMarkUp; if (editor.ShowDialog() == System.Windows.Forms.DialogResult.OK) { try { conf.FromXml(editor.SelectedMarkup); } catch (Exception ex) { MessageBox.Show("An error occured while processing the config!\r\n" + ex.Message, "Edit config", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); //conf.FromXml(oldMarkUp); } LoadControls(); } } }
private void llblRawEdit_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { if (SetEditingNotifierHost()) { RAWXmlEditor editor = new RAWXmlEditor(); string oldMarkUp = editingNotifierHost.ToXml(); editor.SelectedMarkup = oldMarkUp; if (editor.ShowDialog() == System.Windows.Forms.DialogResult.OK) { try { editingNotifierHost = NotifierHost.FromXml(editor.SelectedMarkup, null, false); if (editor.SelectedMarkup == null || editor.SelectedMarkup.Length == 0) { if (MessageBox.Show("Editing the raw config resulted in a configuration error!\r\nDo you want to accept this?", "Configuration error", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == System.Windows.Forms.DialogResult.No) { editingNotifierHost = NotifierHost.FromXml(oldMarkUp, null, false); } } } catch (Exception ex) { MessageBox.Show("An error occured while processing the config!\r\n" + ex.Message, "Edit config", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } LoadControlData(); } } }
private void llblRawEdit_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { if (SelectedEntry != null) { ICollectorConfig conf = (ICollectorConfig)SelectedEntry.AgentConfig; conf.Entries.Clear(); if (!ShowTreeView) { foreach (ListViewItem lvi in lvwEntries.Items) { conf.Entries.Add((ICollectorConfigEntry)lvi.Tag); } } else //TreeView { } RAWXmlEditor editor = new RAWXmlEditor(); string oldMarkUp = conf.ToXml(); editor.SelectedMarkup = oldMarkUp; if (editor.ShowDialog() == System.Windows.Forms.DialogResult.OK) { try { conf.FromXml(editor.SelectedMarkup); if (editor.SelectedMarkup != null && editor.SelectedMarkup.Length > 0 && conf.Entries.Count == 0) { if (MessageBox.Show("Editing the raw config resulted in no loadable entries!\r\nDo you want to accept this?", "No entries", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == System.Windows.Forms.DialogResult.No) { conf.FromXml(oldMarkUp); } } } catch (Exception ex) { MessageBox.Show("An error occured while processing the config!\r\n" + ex.Message, "Edit config", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } LoadEntries(); } } }
private void cmdOK_Click(object sender, EventArgs e) { if (lvwAgentType.SelectedItems.Count == 1) { string configToUse = ""; if (selectingMonitorPacks) { #region Monitor pack if (lvwAgentType.SelectedItems[0].Tag is string) { configToUse = lvwAgentType.SelectedItems[0].Tag.ToString(); } else if (lvwAgentType.SelectedItems[0].Tag is QuickMonTemplate) { QuickMonTemplate selectedTemplate = (QuickMonTemplate)(lvwAgentType.SelectedItems[0].Tag); configToUse = selectedTemplate.Config; } if (chkShowCustomConfig.Checked) { RAWXmlEditor editor = new RAWXmlEditor(); editor.SelectedMarkup = configToUse; if (editor.ShowDialog() == DialogResult.OK) { configToUse = editor.SelectedMarkup; } } configToUse = FormatTemplateVariables(configToUse); if (configToUse.Length == 0) { return; } MonitorPack mp = new MonitorPack(); mp.LoadXml(configToUse); SelectedMonitorPack = mp; #endregion } else if (selectingCollectorHosts) { #region Collector hosts if (lvwAgentType.SelectedItems[0].Tag is CollectorHost) { CollectorHost newCH = (CollectorHost)lvwAgentType.SelectedItems[0].Tag; newCH.UniqueId = ""; configToUse = newCH.ToXml(); } else if (lvwAgentType.SelectedItems[0].Tag is QuickMonTemplate) { QuickMonTemplate selectedTemplate = (QuickMonTemplate)(lvwAgentType.SelectedItems[0].Tag); configToUse = selectedTemplate.Config; } if (chkShowCustomConfig.Checked) { RAWXmlEditor editor = new RAWXmlEditor(); editor.SelectedMarkup = configToUse; if (editor.ShowDialog() == DialogResult.OK) { configToUse = editor.SelectedMarkup; } } configToUse = FormatTemplateVariables(configToUse); if (configToUse.Length == 0) { return; } CollectorHost cls = CollectorHost.FromXml(configToUse); if (cls != null) { SelectedCollectorHost = cls; } else { MessageBox.Show("The configuration for this template is invalid! Please correct and try again.", "Template", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } #endregion } else if (selectingCollectorAgents || selectingNotifierAgents) { #region Collector agents RegisteredAgent ra = null; if (lvwAgentType.SelectedItems[0].Tag is RegisteredAgent) { ra = (RegisteredAgent)lvwAgentType.SelectedItems[0].Tag; } else if (lvwAgentType.SelectedItems[0].Tag is QuickMonTemplate) { QuickMonTemplate template = (QuickMonTemplate)lvwAgentType.SelectedItems[0].Tag; ra = RegisteredAgentCache.GetRegisteredAgentByClassName(template.ForClass, selectingCollectorAgents); configToUse = template.Config; } if (ra != null) { if (System.IO.File.Exists(ra.AssemblyPath)) { Assembly collectorEntryAssembly = Assembly.LoadFile(ra.AssemblyPath); SelectedAgent = (IAgent)collectorEntryAssembly.CreateInstance(ra.ClassName); SelectedAgent.AgentClassName = ra.ClassName; SelectedAgent.AgentClassDisplayName = ra.DisplayName; if (configToUse.Length == 0) { configToUse = SelectedAgent.AgentConfig.GetDefaultOrEmptyXml(); } if (chkShowCustomConfig.Checked) { RAWXmlEditor editor = new RAWXmlEditor(); editor.SelectedMarkup = configToUse; if (editor.ShowDialog() == DialogResult.OK) { configToUse = editor.SelectedMarkup; } } try { if ((selectingCollectorAgents && configToUse.StartsWith("<collectorAgent")) || (selectingNotifierAgents && configToUse.StartsWith("<notifierAgent"))) { System.Xml.XmlDocument collectorAgentDoc = new System.Xml.XmlDocument(); collectorAgentDoc.LoadXml(configToUse); System.Xml.XmlNode configNode = collectorAgentDoc.DocumentElement.SelectSingleNode("config"); if (configNode != null) { configToUse = configNode.OuterXml; } } configToUse = FormatTemplateVariables(configToUse); if (configToUse.Length == 0) { return; } SelectedAgent.AgentConfig.FromXml(configToUse); DialogResult = DialogResult.OK; Close(); } catch (Exception ex) { MessageBox.Show("An error occured while processing the config!\r\n" + ex.Message, "Edit config", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } } #endregion } else if (selectingNotifierHosts) { #region Notifier hosts if (lvwAgentType.SelectedItems[0].Tag is NotifierHost) { configToUse = ((NotifierHost)lvwAgentType.SelectedItems[0].Tag).ToXml(); } else if (lvwAgentType.SelectedItems[0].Tag is QuickMonTemplate) { QuickMonTemplate selectedTemplate = (QuickMonTemplate)(lvwAgentType.SelectedItems[0].Tag); configToUse = selectedTemplate.Config; } if (chkShowCustomConfig.Checked) { RAWXmlEditor editor = new RAWXmlEditor(); editor.SelectedMarkup = configToUse; if (editor.ShowDialog() == DialogResult.OK) { configToUse = editor.SelectedMarkup; } } configToUse = FormatTemplateVariables(configToUse); if (configToUse.Length == 0) { return; } NotifierHost cls = NotifierHost.FromXml(configToUse); if (cls != null) { SelectedNotifierHost = cls; } else { MessageBox.Show("The configuration for this template is invalid! Please correct and try again.", "Template", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } #endregion } EditAfterCreation = chkEditAfterCreate.Checked; DialogResult = DialogResult.OK; Close(); } }