public void Critical(string dateTime, string message) { foreach (var appender in appenders) { appender.Append(dateTime, ReportLevel.CRITICAL, message); } }
private static async Task addFibonacciNumbers( ContextualStream <BigInteger> stream, int count = 30) { await TaskCollector.With(async tc => { await stream.InChild(new CSScope( RWScope.ReadWrite, InfiniteIntervalScope.Create( RWScope.ReadWrite, 0, null)), async childStream => { await Task.Yield(); IAppender <BigInteger> appender = childStream.GetAppender(); BigInteger a = 1, b = 1; tc.Add(appender.Append(a)); /* FIXME: Users of appender generally don’t know * the internals of ContextualStream. * Poss. solution: IAppender.MaxRequiredScope. * Then it would also be useful, if (the) access scopes * could be merged. */ childStream.Context.RequiredScope = new CSScope( RWScope.ReadWrite, InfiniteIntervalScope.Create( RWScope.ReadWrite, 1, null)); tc.Add(appender.Append(b)); childStream.Context.RequiredScope = new CSScope( RWScope.ReadWrite, InfiniteIntervalScope.Create( RWScope.ReadWrite, 2, null)); for (int i = 2; i < count; i++) { BigInteger c = a + b; await Task.Delay(250); a = b; b = c; tc.Add(appender.Append(c)); childStream.Context.RequiredScope = new CSScope( RWScope.ReadWrite, InfiniteIntervalScope.Create( RWScope.ReadWrite, i + 1, null)); } }); }); }
/// <exception cref="VPackBuilderException"/> private VPackBuilder AddInternal <T>(IAppender <T> appender, T value) { bool haveReported = false; if (this.stack.Count > 0 && !this.keyWritten) { this.ReportAdd(); haveReported = true; } try { if (value == null) { this.AppendNull(); } else { appender.Append(this, value); } } catch (VPackBuilderException e) { // clean up in case of an exception if (haveReported) { this.CleanupAdd(); } throw; } return(this); }
/// <summary> /// Register the subscription of the specified appender. /// </summary> /// <param name="appender">The appender.</param> public void Subscribe(IAppender appender) { ILogEvent[] logEvents; lock (_syncRoot) { logEvents = _logEvents.ToArray(); // TODO : alter behavior depending on the configuration _logEvents.Clear(); // Clean kept event to avoid memory exhaustion with logs. _appenders.Add(appender); } foreach (var logEvent in logEvents) { appender.Append(logEvent); } }
static void Main(string[] args) { ILayout layout = new SimpleLayout(); IAppender consoleAppender = new ConsoleAppender(layout); IAppender fileAppender = new FileAppender(layout); ILogger logger = new Logger(consoleAppender, fileAppender); try { logger.Info("The program was finished just now"); logger.Warn("I am going to test the program now"); logger.Error("File not found"); } catch (FileNotFoundException) { Logger currentLogger = logger as Logger; if (currentLogger != null) { IAppender appender = currentLogger.FindAppender("ConsoleLogger"); appender.Append(new Message("Operation failed because the Path of file was not found", Type.Fatal)); } } }
private void Append(string dateTime, ReportLevel reportLevel, string message) { consoleAppender?.Append(dateTime, reportLevel, message); fileAppender?.Append(dateTime, reportLevel, message); }
public void Append(string dateTime, ReportLevel type, string message) { consoleAppender?.Append(dateTime, type, message); fileAppender?.Append(dateTime, type, message); }
public void Text(string text) { writer.Append(text); }
public void AppendMessage(string dateTime, ReportLevel errorLevel, string message) { appender?.Append(dateTime, errorLevel, message); fileAppender?.Append(dateTime, errorLevel, message); }
private void Append(string dateTime, ReportLevel type, string message) { appender?.Append(dateTime, type, message); fileAppender?.Append(dateTime, type, message); }
private void Append(string dateTime, string type, string message) { consoleAppender.Append(dateTime, type, message); fileAppender.Append(dateTime, type, message); }
private void AppenedMessage(string dateTime, MessageType currentMessageType, string message) { consoleAppender?.Append(dateTime, currentMessageType, message); fileAppender?.Append(dateTime, currentMessageType, message); }
private void AppendMessage(string dateTime, ReportLevel reportLevel, string errorMessage) { consoleAppender?.Append(dateTime, reportLevel, errorMessage); fileAppender?.Append(dateTime, reportLevel, errorMessage); }
/// <exception cref="VPackBuilderException"/> private VPackBuilder AddInternal <T>(string attribute, IAppender <T> appender, T value) { if (attribute != null) { bool haveReported = false; if (this.stack.Count > 0) { byte head = this.Head(); if (head != 0x0b && head != 0x14) { throw new VPackBuilderNeedOpenObjectException(); } if (this.keyWritten) { throw new VPackBuilderKeyAlreadyWrittenException(); } this.ReportAdd(); haveReported = true; } try { if (VPackSlice.attributeTranslator != null) { VPackSlice translate = VPackSlice.attributeTranslator.Translate(attribute); if (translate != null) { byte[] trValue = translate.GetRawVPack(); this.EnsureCapacity(this.size + trValue.Length); for (int i = 0; i < trValue.Length; i++) { this.AddUnchecked(trValue[i]); } this.keyWritten = true; if (value == null) { this.AppendNull(); } else { appender.Append(this, value); } return(this); } } // otherwise fall through to regular behavior STRING.Append(this, attribute); this.keyWritten = true; if (value == null) { this.AppendNull(); } else { appender.Append(this, value); } } catch (VPackBuilderException e) { // clean up in case of an exception if (haveReported) { this.CleanupAdd(); } throw; } finally { this.keyWritten = false; } } else { this.AddInternal(appender, value); } return(this); }
private void Append(string dateTime, string type, string criticalMessage) { consoleAappender?.Append(dateTime, type, criticalMessage); fileAappender?.Append(dateTime, type, criticalMessage); }
private void AppendMessage(string date, ReportLevel reportLevel, string message) { _appender.Append(date, reportLevel, message); }
private void Append(string dateTime, ReportLevel type, string message) { consoleAppender?.Append(dateTime, type, message); // the ? says taht if it is null it will not execute the Method(). fileAppender?.Append(dateTime, type, message); // the ? says taht if it is null it will not execute the Method(). }
private void Append(string dateTime, ReportLevel reportLevel, string criticalMessage) { consoleAappender?.Append(dateTime, reportLevel, criticalMessage); fileAappender?.Append(dateTime, reportLevel, criticalMessage); }
public void Error(string dateTime, string errorMessage) { consoleAppender.Append(dateTime, "Error", errorMessage); }