diff --git a/src/log4net/Core/LoggingEvent.cs b/src/log4net/Core/LoggingEvent.cs index 8abb555e..cf228a71 100644 --- a/src/log4net/Core/LoggingEvent.cs +++ b/src/log4net/Core/LoggingEvent.cs @@ -680,6 +680,7 @@ public LocationInfo LocationInformation public object MessageObject { get { return m_message; } + protected set { m_message = value; } } /// @@ -743,7 +744,7 @@ internal void EnsureRepository(ILoggerRepository repository) /// The collected information is cached for future use. /// /// - public string RenderedMessage + public virtual string RenderedMessage { get { @@ -785,7 +786,7 @@ public string RenderedMessage /// to be accessed multiple times then the property will be more efficient. /// /// - public void WriteRenderedMessage(TextWriter writer) + public virtual void WriteRenderedMessage(TextWriter writer) { if (m_data.Message != null) { @@ -1357,7 +1358,7 @@ public void FixVolatileData(bool fastButLoose) /// It is not possible to 'unfix' a field. /// /// - protected void FixVolatileData(FixFlags flags) + protected virtual void FixVolatileData(FixFlags flags) { object forceCreation = null; @@ -1641,7 +1642,7 @@ public PropertiesDictionary GetProperties() /// /// The application supplied message of logging event. /// - private readonly object m_message; + private object m_message; /// /// The exception that was thrown. diff --git a/src/log4net/Util/SystemStringFormat.cs b/src/log4net/Util/SystemStringFormat.cs index cd71c03b..f28f0777 100644 --- a/src/log4net/Util/SystemStringFormat.cs +++ b/src/log4net/Util/SystemStringFormat.cs @@ -36,8 +36,16 @@ namespace log4net.Util public sealed class SystemStringFormat { private readonly IFormatProvider m_provider; - private readonly string m_format; - private readonly object[] m_args; + + /// + /// Format + /// + public string Format { get; set; } + + /// + /// Args + /// + public object[] Args { get; set; } #region Constructor @@ -50,8 +58,8 @@ public sealed class SystemStringFormat public SystemStringFormat(IFormatProvider provider, string format, params object[] args) { m_provider = provider; - m_format = format; - m_args = args; + Format = format; + Args = args; } #endregion Constructor @@ -62,7 +70,7 @@ public SystemStringFormat(IFormatProvider provider, string format, params object /// the formatted string public override string ToString() { - return StringFormat(m_provider, m_format, m_args); + return StringFormat(m_provider, Format, Args); } #region StringFormat