Update of /cvsroot/springnet/Spring.Net/src/Spring/Spring.Aop/Aspects/Logging
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv3043
Modified Files:
SimpleLoggingAdvice.cs
Log Message:
Added new LogReturnValue property to SimpleLoggingAdvice.
Minor fixes in SimpleLoggingAdvice generated messages.
Index: SimpleLoggingAdvice.cs
===================================================================
RCS file: /cvsroot/springnet/Spring.Net/src/Spring/Spring.Aop/Aspects/Logging/SimpleLoggingAdvice.cs,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** SimpleLoggingAdvice.cs 6 Dec 2007 17:17:19 -0000 1.5
--- SimpleLoggingAdvice.cs 4 Apr 2008 14:59:38 -0000 1.6
***************
*** 55,58 ****
--- 55,63 ----
/// <summary>
+ /// Flag to indicate if the return value should be in the log message.
+ /// </summary>
+ private bool _logReturnValue;
+
+ /// <summary>
/// The separator string to use for delmiting log message fields.
/// </summary>
***************
*** 122,125 ****
--- 127,140 ----
/// <summary>
+ /// Gets or sets a value indicating whether log return value.
+ /// </summary>
+ /// <value><c>true</c> if log return value; otherwise, <c>false</c>.</value>
+ public bool LogReturnValue
+ {
+ get { return _logReturnValue; }
+ set { _logReturnValue = value; }
+ }
+
+ /// <summary>
/// Gets or sets the seperator string to use for delmiting log message fields.
/// </summary>
***************
*** 200,208 ****
}
}
-
-
}
-
/// <summary>
/// Determines whether the given log is enabled.
--- 215,220 ----
***************
*** 288,302 ****
sb.Append("Entering ");
AppendCommonInformation(sb, invocation, idString);
-
if (logMethodArguments)
{
! sb.Append(GetMethodArgumentAsString(invocation)).Append(Separator);
}
! return RemoveLastSeparator(sb, Separator);
!
}
-
/// <summary>
/// Gets the exception message.
--- 300,311 ----
sb.Append("Entering ");
AppendCommonInformation(sb, invocation, idString);
if (logMethodArguments)
{
! sb.Append(GetMethodArgumentAsString(invocation));
}
! return RemoveLastSeparator(sb.ToString(), Separator);
}
/// <summary>
/// Gets the exception message.
***************
*** 311,322 ****
StringBuilder sb = new StringBuilder(128);
sb.Append("Exception thrown in ");
! sb.Append(invocation.Method.Name);
AppendCommonInformation(sb, invocation, idString);
if (LogExecutionTime)
{
! sb.Append(executionTimeSpan.TotalMilliseconds);
! }
!
! return sb.ToString();
}
--- 320,331 ----
StringBuilder sb = new StringBuilder(128);
sb.Append("Exception thrown in ");
! sb.Append(invocation.Method.Name).Append(Separator);
AppendCommonInformation(sb, invocation, idString);
if (LogExecutionTime)
{
! sb.Append(executionTimeSpan.TotalMilliseconds).Append(" ms");
! }
!
! return RemoveLastSeparator(sb.ToString(), Separator);
}
***************
*** 335,344 ****
sb.Append("Exiting ");
AppendCommonInformation(sb, invocation, idString);
if (LogExecutionTime)
{
! sb.Append(executionTimeSpan.TotalMilliseconds).Append(" ms").Append(Separator);
}
! sb.Append("return=").Append(returnValue);
! return sb.ToString();
}
--- 344,356 ----
sb.Append("Exiting ");
AppendCommonInformation(sb, invocation, idString);
+ if (LogReturnValue && invocation.Method.ReturnType != typeof(void))
+ {
+ sb.Append("return=").Append(returnValue).Append(Separator);
+ }
if (LogExecutionTime)
{
! sb.Append(executionTimeSpan.TotalMilliseconds).Append(" ms");
}
! return RemoveLastSeparator(sb.ToString(), Separator);
}
***************
*** 377,399 ****
}
! return RemoveLastSeparator(sb, "; ");
!
}
-
#endregion
#region Private Methods
! private string RemoveLastSeparator(StringBuilder sb, string seperator)
{
! string s = sb.ToString();
! if (s.EndsWith(seperator))
{
! return s.Substring(0,s.Length - seperator.Length);
}
else
{
! return s;
}
}
--- 389,408 ----
}
! return RemoveLastSeparator(sb.ToString(), "; ");
}
#endregion
#region Private Methods
! private string RemoveLastSeparator(string str, string separator)
{
! if (str.EndsWith(separator))
{
! return str.Substring(0, str.Length - separator.Length);
}
else
{
! return str;
}
}
|