You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by gb...@apache.org on 2007/11/03 11:17:59 UTC

svn commit: r591573 - /ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DefaultPreparedCommand.cs

Author: gbayon
Date: Sat Nov  3 03:17:59 2007
New Revision: 591573

URL: http://svn.apache.org/viewvc?rev=591573&view=rev
Log:
Fix IBATISNET-248  	 DefaultPreparedCommand log not thread safe

Modified:
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DefaultPreparedCommand.cs

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DefaultPreparedCommand.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DefaultPreparedCommand.cs?rev=591573&r1=591572&r2=591573&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DefaultPreparedCommand.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DefaultPreparedCommand.cs Sat Nov  3 03:17:59 2007
@@ -48,14 +48,8 @@
 	/// </summary>
 	internal class DefaultPreparedCommand : IPreparedCommand
 	{
-
-		#region Fields
 		private static readonly ILog _logger = LogManager.GetLogger( MethodBase.GetCurrentMethod().DeclaringType );
-        private StringBuilder _paramLogList = new StringBuilder(); // Log info
-        private StringBuilder _typeLogList = new StringBuilder(); // Log info
 		
-        #endregion 
-
 		#region IPreparedCommand Members
 
 		/// <summary>
@@ -99,14 +93,8 @@
 		{
 			StringCollection properties = request.PreparedStatement.DbParametersName;
             IDbDataParameter[] parameters = request.PreparedStatement.DbParameters;
-
-            #region Logging
-            if (_logger.IsDebugEnabled)
-            {
-                _paramLogList.Remove(0, _paramLogList.Length);
-                _typeLogList.Remove(0, _typeLogList.Length);
-            }
-            #endregion
+            StringBuilder paramLogList = new StringBuilder(); // Log info
+            StringBuilder typeLogList = new StringBuilder(); // Log info
             
 			int count = properties.Count;
 
@@ -119,10 +107,10 @@
 				#region Logging
 				if (_logger.IsDebugEnabled)
 				{
-                    _paramLogList.Append(sqlParameter.ParameterName);
-                    _paramLogList.Append("=[");
-                    _typeLogList.Append(sqlParameter.ParameterName);
-                    _typeLogList.Append("=[");
+                    paramLogList.Append(sqlParameter.ParameterName);
+                    paramLogList.Append("=[");
+                    typeLogList.Append(sqlParameter.ParameterName);
+                    typeLogList.Append("=[");
 				}
 				#endregion
 
@@ -151,8 +139,8 @@
 				#region Logging
 				if (_logger.IsDebugEnabled)
 				{
-                    _paramLogList.Append(property.PropertyName);
-                    _paramLogList.Append(",");
+                    paramLogList.Append(property.PropertyName);
+                    paramLogList.Append(",");
 				}
 				#endregion 					
 
@@ -186,16 +174,16 @@
 				{
 					if (parameterCopy.Value == DBNull.Value) 
 					{
-                        _paramLogList.Append("null");
-                        _paramLogList.Append("], ");
-                        _typeLogList.Append("System.DBNull, null");
-                        _typeLogList.Append("], ");
+                        paramLogList.Append("null");
+                        paramLogList.Append("], ");
+                        typeLogList.Append("System.DBNull, null");
+                        typeLogList.Append("], ");
 					} 
 					else 
 					{
 
-                        _paramLogList.Append(parameterCopy.Value.ToString());
-                        _paramLogList.Append("], ");
+                        paramLogList.Append(parameterCopy.Value.ToString());
+                        paramLogList.Append("], ");
 
 						// sqlParameter.DbType could be null (as with Npgsql)
 						// if PreparedStatementFactory did not find a dbType for the parameter in:
@@ -203,10 +191,10 @@
 						// Use parameterCopy.DbType
 
 						//typeLogList.Append( sqlParameter.DbType.ToString() );
-                        _typeLogList.Append(parameterCopy.DbType.ToString());
-                        _typeLogList.Append(", ");
-                        _typeLogList.Append(parameterCopy.Value.GetType().ToString());
-                        _typeLogList.Append("], ");
+                        typeLogList.Append(parameterCopy.DbType.ToString());
+                        typeLogList.Append(", ");
+                        typeLogList.Append(parameterCopy.Value.GetType().ToString());
+                        typeLogList.Append("], ");
 					}
 				}
 				#endregion 
@@ -239,8 +227,8 @@
 
 			if (_logger.IsDebugEnabled && properties.Count>0)
 			{
-                _logger.Debug("Statement Id: [" + statement.Id + "] Parameters: [" + _paramLogList.ToString(0, _paramLogList.Length - 2) + "]");
-                _logger.Debug("Statement Id: [" + statement.Id + "] Types: [" + _typeLogList.ToString(0, _typeLogList.Length - 2) + "]");
+                _logger.Debug("Statement Id: [" + statement.Id + "] Parameters: [" + paramLogList.ToString(0, paramLogList.Length - 2) + "]");
+                _logger.Debug("Statement Id: [" + statement.Id + "] Types: [" + typeLogList.ToString(0, typeLogList.Length - 2) + "]");
 			}
 			#endregion 
 		}