adding extension points for revising logged content
diff --git a/src/log4net/Core/LoggingEvent.cs b/src/log4net/Core/LoggingEvent.cs
index 8abb555..cf228a7 100644
--- a/src/log4net/Core/LoggingEvent.cs
+++ b/src/log4net/Core/LoggingEvent.cs
@@ -680,6 +680,7 @@
public object MessageObject
{
get { return m_message; }
+ protected set { m_message = value; }
}
/// <summary>
@@ -743,7 +744,7 @@
/// The collected information is cached for future use.
/// </para>
/// </remarks>
- public string RenderedMessage
+ public virtual string RenderedMessage
{
get
{
@@ -785,7 +786,7 @@
/// to be accessed multiple times then the property will be more efficient.
/// </para>
/// </remarks>
- public void WriteRenderedMessage(TextWriter writer)
+ public virtual void WriteRenderedMessage(TextWriter writer)
{
if (m_data.Message != null)
{
@@ -1357,7 +1358,7 @@
/// It is not possible to 'unfix' a field.
/// </para>
/// </remarks>
- protected void FixVolatileData(FixFlags flags)
+ protected virtual void FixVolatileData(FixFlags flags)
{
object forceCreation = null;
@@ -1641,7 +1642,7 @@
/// <summary>
/// The application supplied message of logging event.
/// </summary>
- private readonly object m_message;
+ private object m_message;
/// <summary>
/// The exception that was thrown.
diff --git a/src/log4net/Util/SystemStringFormat.cs b/src/log4net/Util/SystemStringFormat.cs
index cd71c03..f28f077 100644
--- a/src/log4net/Util/SystemStringFormat.cs
+++ b/src/log4net/Util/SystemStringFormat.cs
@@ -36,8 +36,16 @@
public sealed class SystemStringFormat
{
private readonly IFormatProvider m_provider;
- private readonly string m_format;
- private readonly object[] m_args;
+
+ /// <summary>
+ /// Format
+ /// </summary>
+ public string Format { get; set; }
+
+ /// <summary>
+ /// Args
+ /// </summary>
+ public object[] Args { get; set; }
#region Constructor
@@ -50,8 +58,8 @@
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 @@
/// <returns>the formatted string</returns>
public override string ToString()
{
- return StringFormat(m_provider, m_format, m_args);
+ return StringFormat(m_provider, Format, Args);
}
#region StringFormat