private void NewLiveLogReceiver_Clicked(object sender, EventArgs e) { using (NewReceiverDialog dlg = new NewReceiverDialog()) { if (dlg.ShowDialog(this) == DialogResult.OK) { Session instance = new Session(); instance.ReceiverType = LogReceiverFactory.FindReceiverByType(dlg.Receiver.GetType()).Name; if (dlg.Parser != null) { instance.ParserType = LogEventParserFactory.FindParserByType(dlg.Parser.GetType()).Name; } instance.Name = GetUniqueSessionName(); instance.Dirty = true; instance.Receiver = dlg.Receiver; instance.Parser = dlg.Parser; instance.Resolve(); instance.CreateTab(this); _sessions.Add(instance); ReloadTabPages(); instance.Start(); tabControl1.SelectedTab = instance.TabPage; } } }
public static Session Load(string fileName) { //SoapFormatter formatter = new SoapFormatter(); using (FileStream fs = File.OpenRead(fileName)) { XmlTextReader xtr = new XmlTextReader(fs); xtr.ReadStartElement("nlog-viewer"); Session c = (Session)_serializer.Deserialize(xtr); c.FileName = fileName; XmlSerializer s1 = new XmlSerializer(LogReceiverFactory.GetReceiverType(c.ReceiverType)); c.Receiver = (ILogEventReceiver)s1.Deserialize(xtr); if (c.Receiver is ILogEventReceiverWithParser) { XmlSerializer s2 = new XmlSerializer(LogEventParserFactory.GetParserType(c.ParserType)); c.Parser = (ILogEventParser)s2.Deserialize(xtr); } xtr.ReadEndElement(); c.Resolve(); return(c); } }
void page0_ReceiverChanged(object sender, EventArgs e) { if (((SelectLogReceiverPropertyPage)sender).SelectedLogReceiver != null) { _receiver = LogReceiverFactory.CreateLogReceiver( ((SelectLogReceiverPropertyPage)sender).SelectedLogReceiver.Name); if (_receiver is IWizardConfigurable) { ReplacePage(PAGE_RECEIVER_PROPERTIES, ((IWizardConfigurable)_receiver).GetWizardPage()); } else { ReplacePage(PAGE_RECEIVER_PROPERTIES, new LogReceiverPropertyPage()); } IWizardPropertyPage <ILogEventReceiver> pp = Pages[PAGE_RECEIVER_PROPERTIES] as IWizardPropertyPage <ILogEventReceiver>; if (pp != null) { pp.TargetObject = _receiver; } } else { _receiver = null; } UnActivatePage(PAGE_RECEIVER_PROPERTIES); }