public void SetLogger(DataGeneratorLogger logger) { _logger = logger; }
/// <summary> /// Initializes all defined loggers /// </summary> private void InitLoggers() { XmlElement destinationNode = (XmlElement)_doc.DocumentElement.SelectSingleNode("Logger/Destination"); if(destinationNode == null) throw new FuzzParseException("Could not find logger destination node"); _logDestination = _formatter.Format(destinationNode.InnerText); foreach(XmlElement useLoggerNode in _doc.DocumentElement.SelectNodes("Logger/UseLogger")) { switch(useLoggerNode.GetAttribute("name")) { case "datagenlogger": { DataGeneratorLogger datagenLogger = new DataGeneratorLogger(_logDestination); foreach(var fuzzDescInfo in _fuzzDescriptions) { foreach(var fuzzLocationInfo in fuzzDescInfo.FuzzLocations) fuzzLocationInfo.SetLogger(LoggerDestinationEnum.DataGenLogger, datagenLogger); foreach(var preCondition in _preConditions) preCondition.SetLogger(LoggerDestinationEnum.DataGenLogger, datagenLogger); } _loggers.Add(datagenLogger); break; } case "connectorlogger": { _loggers.Add(_connector.CreateLogger(_logDestination)); break; } case "stackframelogger": { _loggers.Add(new StackFrameLogger(_connector, _logDestination)); break; } case "remotepipelogger": { if(_remoteControlProtocol != null) { string[] pipeNames = XmlHelper.ReadStringArray(useLoggerNode, "PipeName"); _loggers.Add(new RemotePipeLogger(_remoteControlProtocol, _logDestination, pipeNames)); } break; } } } }