/// <summary> /// Create the wrapping stamper logger. By default, root logger is not wrapped. /// </summary> /// <param name="logger">Implementation logger to wrap.</param> /// <param name="call">delegate to call to stamp the event before passing it to <paramref name="logger"/> </param> /// <returns></returns> protected virtual Logger CreateStampingLogger(Logger logger, StampDelegate call) { if (logger.Name == "root") { return(logger); } else { return(new StampingLogger(logger, call)); } }
/// <summary> /// Wrap a logger and remember to call a delegate for each <see cref="LoggingEvent"/> /// </summary> /// <param name="innerLogger"></param> /// <param name="call"></param> /// <remarks> /// Callers shoul ensure that params are not null! /// </remarks> public StampingLogger(Logger innerLogger, StampDelegate call) : base(innerLogger.Name) { InnerLogger = innerLogger; Call = call; }