This is an automated email from the ASF dual-hosted git repository.
davydm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4net.git
The following commit(s) were added to refs/heads/master by this push:
new 6bd138ae adding extension points for revising logged content
new aa74f9da Merge pull request #89 from komsa-ag/Feature/ExtensionPoints
6bd138ae is described below
commit 6bd138ae60edc45b64574fbb8846a539b758ad24
Author: Jan Friedrich <[email protected]>
AuthorDate: Tue Jun 28 13:37:25 2022 +0200
adding extension points for revising logged content
---
src/log4net/Core/LoggingEvent.cs | 9 +++++----
src/log4net/Util/SystemStringFormat.cs | 18 +++++++++++++-----
2 files changed, 18 insertions(+), 9 deletions(-)
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 @@ namespace log4net.Core
public object MessageObject
{
get { return m_message; }
+ protected set { m_message = value; }
}
/// <summary>
@@ -743,7 +744,7 @@ namespace log4net.Core
/// The collected information is cached for future use.
/// </para>
/// </remarks>
- public string RenderedMessage
+ public virtual string RenderedMessage
{
get
{
@@ -785,7 +786,7 @@ namespace log4net.Core
/// 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 @@ namespace log4net.Core
/// 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 @@ namespace log4net.Core
/// <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 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;
+
+ /// <summary>
+ /// Format
+ /// </summary>
+ public string Format { get; set; }
+
+ /// <summary>
+ /// Args
+ /// </summary>
+ public object[] Args { get; set; }
#region Constructor
@@ -50,8 +58,8 @@ namespace log4net.Util
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 @@ namespace log4net.Util
/// <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