/// <summary> /// Removes the specified appender from the list of attached appenders. /// </summary> /// <param name="appender">The appender to remove.</param> /// <returns>The appender removed from the list</returns> /// <remarks> /// <para> /// The appender removed is not closed. /// If you are discarding the appender you must call /// <see cref="IAppender.Close"/> on the appender removed. /// </para> /// </remarks> public Appender.IAppender RemoveAppender(Appender.IAppender appender) { if (appender == null) { throw new ArgumentException("RemoveAppender the newappender is null"); } m_AppenderList.Remove(appender); return(appender); }
/// <summary> /// Attaches an appender. /// </summary> /// <param name="newAppender">The appender to add.</param> /// <remarks> /// <para> /// If the appender is already in the list it won't be added again. /// </para> /// </remarks> public void AddAppender(Appender.IAppender appender) { if (appender == null) { throw new ArgumentException("AddAppender the appender is null"); } if (Exists(appender.Name) == null) { m_AppenderList.Add(appender); } }
/// <summary> /// Collect the appenders from an <see cref="IAppenderAttachable"/>. /// The appender may also be a container. /// </summary> /// <param name="appenderList"></param> /// <param name="appender"></param> private static void CollectAppender(System.Collections.ArrayList appenderList, Appender.IAppender appender) { if (!appenderList.Contains(appender)) { appenderList.Add(appender); IAppenderAttachable container = appender as IAppenderAttachable; if (container != null) { CollectAppenders(appenderList, container); } } }
/// <summary> /// Wrap of <see cref="InnerLogger"/> /// </summary> /// <param name="appender"></param> /// <returns></returns> public override Appender.IAppender RemoveAppender(Appender.IAppender appender) { return(InnerLogger.RemoveAppender(appender)); }
/// <summary> /// Wrap of <see cref="InnerLogger"/> /// </summary> /// <param name="newAppender"></param> public override void AddAppender(Appender.IAppender newAppender) { InnerLogger.AddAppender(newAppender); }