You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4net-dev@logging.apache.org by rg...@apache.org on 2007/12/29 22:00:20 UTC

svn commit: r607475 [3/3] - in /logging/log4net/trunk: src/ src/Appender/ src/Config/ src/Core/ src/Layout/Pattern/ src/ObjectRenderer/ src/Plugin/ src/Repository/ src/Repository/Hierarchy/ src/Util/ src/Util/PatternStringConverters/ src/Util/TypeConve...

Modified: logging/log4net/trunk/src/Util/SystemInfo.cs
URL: http://svn.apache.org/viewvc/logging/log4net/trunk/src/Util/SystemInfo.cs?rev=607475&r1=607474&r2=607475&view=diff
==============================================================================
--- logging/log4net/trunk/src/Util/SystemInfo.cs (original)
+++ logging/log4net/trunk/src/Util/SystemInfo.cs Sat Dec 29 13:00:17 2007
@@ -83,7 +83,7 @@
 			string nullTextAppSettingsKey = SystemInfo.GetAppSetting("log4net.NullText");
 			if (nullTextAppSettingsKey != null && nullTextAppSettingsKey.Length > 0)
 			{
-				LogLog.Debug("SystemInfo: Initializing NullText value to [" + nullTextAppSettingsKey + "].");
+				LogLog.Debug(declaringType, "Initializing NullText value to [" + nullTextAppSettingsKey + "].");
 				nullText = nullTextAppSettingsKey;
 			}
 
@@ -91,7 +91,7 @@
 			string notAvailableTextAppSettingsKey = SystemInfo.GetAppSetting("log4net.NotAvailableText");
 			if (notAvailableTextAppSettingsKey != null && notAvailableTextAppSettingsKey.Length > 0)
 			{
-				LogLog.Debug("SystemInfo: Initializing NotAvailableText value to [" + notAvailableTextAppSettingsKey + "].");
+				LogLog.Debug(declaringType, "Initializing NotAvailableText value to [" + notAvailableTextAppSettingsKey + "].");
 				notAvailableText = notAvailableTextAppSettingsKey;
 			}
 #endif
@@ -332,7 +332,7 @@
 					{
 						// This security exception will occur if the caller does not have 
 						// some undefined set of SecurityPermission flags.
-						LogLog.Debug("SystemInfo: Security exception while trying to get current domain friendly name. Error Ignored.");
+						LogLog.Debug(declaringType, "Security exception while trying to get current domain friendly name. Error Ignored.");
 					}
 
 					if (s_appFriendlyName == null || s_appFriendlyName.Length == 0)
@@ -628,7 +628,7 @@
 			// Check if the type name specifies the assembly name
 			if(typeName.IndexOf(',') == -1)
 			{
-				//LogLog.Debug("SystemInfo: Loading type ["+typeName+"] from assembly ["+relativeAssembly.FullName+"]");
+				//LogLog.Debug(declaringType, "SystemInfo: Loading type ["+typeName+"] from assembly ["+relativeAssembly.FullName+"]");
 #if NETCF
 				return relativeAssembly.GetType(typeName, throwOnError);
 #else
@@ -637,7 +637,7 @@
 				if (type != null)
 				{
 					// Found type in relative assembly
-					//LogLog.Debug("SystemInfo: Loaded type ["+typeName+"] from assembly ["+relativeAssembly.FullName+"]");
+					//LogLog.Debug(declaringType, "SystemInfo: Loaded type ["+typeName+"] from assembly ["+relativeAssembly.FullName+"]");
 					return type;
 				}
 
@@ -660,7 +660,7 @@
 						if (type != null)
 						{
 							// Found type in loaded assembly
-							LogLog.Debug("SystemInfo: Loaded type ["+typeName+"] from assembly ["+assembly.FullName+"] by searching loaded assemblies.");
+							LogLog.Debug(declaringType, "Loaded type ["+typeName+"] from assembly ["+assembly.FullName+"] by searching loaded assemblies.");
 							return type;
 						}
 					}
@@ -677,7 +677,7 @@
 			else
 			{
 				// Includes explicit assembly name
-				//LogLog.Debug("SystemInfo: Loading type ["+typeName+"] from global Type");
+				//LogLog.Debug(declaringType, "SystemInfo: Loading type ["+typeName+"] from global Type");
 
 #if NETCF
 				// In NETCF 2 and 3 arg versions seem to behave differently
@@ -860,7 +860,7 @@
 			catch(Exception ex)
 			{
 				// If an exception is thrown here then it looks like the config file does not parse correctly.
-				LogLog.Error("DefaultRepositorySelector: Exception while reading ConfigurationSettings. Check your .config file is well formed XML.", ex);
+				LogLog.Error(declaringType, "Exception while reading ConfigurationSettings. Check your .config file is well formed XML.", ex);
 			}
 			return null;
 		}
@@ -994,6 +994,15 @@
 		#endregion Public Static Fields
 
 		#region Private Static Fields
+
+	    /// <summary>
+	    /// The fully qualified type of the SystemInfo class.
+	    /// </summary>
+	    /// <remarks>
+	    /// Used by the internal logger to record the Type of the
+	    /// log message.
+	    /// </remarks>
+	    private readonly static Type declaringType = typeof(SystemInfo);
 
 		/// <summary>
 		/// Cache the host name for the current machine

Modified: logging/log4net/trunk/src/Util/SystemStringFormat.cs
URL: http://svn.apache.org/viewvc/logging/log4net/trunk/src/Util/SystemStringFormat.cs?rev=607475&r1=607474&r2=607475&view=diff
==============================================================================
--- logging/log4net/trunk/src/Util/SystemStringFormat.cs (original)
+++ logging/log4net/trunk/src/Util/SystemStringFormat.cs Sat Dec 29 13:00:17 2007
@@ -106,12 +106,12 @@
 			}
 			catch(Exception ex)
 			{
-				log4net.Util.LogLog.Warn("StringFormat: Exception while rendering format ["+format+"]", ex);
+				log4net.Util.LogLog.Warn(declaringType, "Exception while rendering format ["+format+"]", ex);
 				return StringFormatError(ex, format, args);
 			}
 			catch
 			{
-				log4net.Util.LogLog.Warn("StringFormat: Exception while rendering format ["+format+"]");
+				log4net.Util.LogLog.Warn(declaringType, "Exception while rendering format ["+format+"]");
 				return StringFormatError(null, format, args);
 			}
 		}
@@ -143,12 +143,12 @@
 			}
 			catch(Exception ex)
 			{
-				log4net.Util.LogLog.Error("StringFormat: INTERNAL ERROR during StringFormat error handling", ex);
+				log4net.Util.LogLog.Error(declaringType, "INTERNAL ERROR during StringFormat error handling", ex);
 				return "<log4net.Error>Exception during StringFormat. See Internal Log.</log4net.Error>";
 			}
 			catch
 			{
-				log4net.Util.LogLog.Error("StringFormat: INTERNAL ERROR during StringFormat error handling");
+				log4net.Util.LogLog.Error(declaringType, "INTERNAL ERROR during StringFormat error handling");
 				return "<log4net.Error>Exception during StringFormat. See Internal Log.</log4net.Error>";
 			}
 		}
@@ -214,5 +214,18 @@
 		}
 
 		#endregion StringFormat
+
+	    #region Private Static Fields
+
+	    /// <summary>
+	    /// The fully qualified type of the SystemStringFormat class.
+	    /// </summary>
+	    /// <remarks>
+	    /// Used by the internal logger to record the Type of the
+	    /// log message.
+	    /// </remarks>
+	    private readonly static Type declaringType = typeof(SystemStringFormat);
+
+	    #endregion Private Static Fields
 	}
 }

Modified: logging/log4net/trunk/src/Util/ThreadContextStacks.cs
URL: http://svn.apache.org/viewvc/logging/log4net/trunk/src/Util/ThreadContextStacks.cs?rev=607475&r1=607474&r2=607475&view=diff
==============================================================================
--- logging/log4net/trunk/src/Util/ThreadContextStacks.cs (original)
+++ logging/log4net/trunk/src/Util/ThreadContextStacks.cs Sat Dec 29 13:00:17 2007
@@ -95,7 +95,7 @@
 						{
 						}
 
-						LogLog.Error("ThreadContextStacks: Request for stack named ["+key+"] failed because a property with the same name exists which is a ["+propertyValue.GetType().Name+"] with value ["+propertyValueString+"]");
+						LogLog.Error(declaringType, "ThreadContextStacks: Request for stack named ["+key+"] failed because a property with the same name exists which is a ["+propertyValue.GetType().Name+"] with value ["+propertyValueString+"]");
 
 						stack = new ThreadContextStack();
 					}
@@ -106,6 +106,19 @@
 		}
 
 		#endregion Public Instance Properties
+
+	    #region Private Static Fields
+
+	    /// <summary>
+	    /// The fully qualified type of the ThreadContextStacks class.
+	    /// </summary>
+	    /// <remarks>
+	    /// Used by the internal logger to record the Type of the
+	    /// log message.
+	    /// </remarks>
+	    private readonly static Type declaringType = typeof(ThreadContextStacks);
+
+	    #endregion Private Static Fields
 	}
 }
 

Modified: logging/log4net/trunk/src/Util/TypeConverters/ConverterRegistry.cs
URL: http://svn.apache.org/viewvc/logging/log4net/trunk/src/Util/TypeConverters/ConverterRegistry.cs?rev=607475&r1=607474&r2=607475&view=diff
==============================================================================
--- logging/log4net/trunk/src/Util/TypeConverters/ConverterRegistry.cs (original)
+++ logging/log4net/trunk/src/Util/TypeConverters/ConverterRegistry.cs Sat Dec 29 13:00:17 2007
@@ -260,12 +260,12 @@
 				}
 				catch(Exception ex)
 				{
-					LogLog.Error("ConverterRegistry: Cannot CreateConverterInstance of type ["+converterType.FullName+"], Exception in call to Activator.CreateInstance", ex);
+					LogLog.Error(declaringType, "Cannot CreateConverterInstance of type ["+converterType.FullName+"], Exception in call to Activator.CreateInstance", ex);
 				}
 			}
 			else
 			{
-				LogLog.Error("ConverterRegistry: Cannot CreateConverterInstance of type ["+converterType.FullName+"], type does not implement IConvertFrom or IConvertTo");
+				LogLog.Error(declaringType, "Cannot CreateConverterInstance of type ["+converterType.FullName+"], type does not implement IConvertFrom or IConvertTo");
 			}
 			return null;
 		}
@@ -273,6 +273,15 @@
 		#endregion Public Static Methods
 
 		#region Private Static Fields
+
+	    /// <summary>
+	    /// The fully qualified type of the ConverterRegistry class.
+	    /// </summary>
+	    /// <remarks>
+	    /// Used by the internal logger to record the Type of the
+	    /// log message.
+	    /// </remarks>
+	    private readonly static Type declaringType = typeof(ConverterRegistry);
 
 		/// <summary>
 		/// Mapping from <see cref="Type" /> to type converter.

Added: logging/log4net/trunk/src/log4net.vs2005.csproj
URL: http://svn.apache.org/viewvc/logging/log4net/trunk/src/log4net.vs2005.csproj?rev=607475&view=auto
==============================================================================
--- logging/log4net/trunk/src/log4net.vs2005.csproj (added)
+++ logging/log4net/trunk/src/log4net.vs2005.csproj Sat Dec 29 13:00:17 2007
@@ -0,0 +1,720 @@
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ProjectType>Local</ProjectType>
+    <ProductVersion>8.0.50727</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{181FE707-E161-4722-9F38-6AAAB6FAA106}</ProjectGuid>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ApplicationIcon>
+    </ApplicationIcon>
+    <AssemblyKeyContainerName>
+    </AssemblyKeyContainerName>
+    <AssemblyName>log4net</AssemblyName>
+    <AssemblyOriginatorKeyFile>
+    </AssemblyOriginatorKeyFile>
+    <DefaultClientScript>JScript</DefaultClientScript>
+    <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
+    <DefaultTargetSchema>IE50</DefaultTargetSchema>
+    <DelaySign>false</DelaySign>
+    <OutputType>Library</OutputType>
+    <RootNamespace>log4net</RootNamespace>
+    <StartupObject>
+    </StartupObject>
+    <FileUpgradeFlags>
+    </FileUpgradeFlags>
+    <UpgradeBackupLocation>
+    </UpgradeBackupLocation>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <OutputPath>..\build\bin\net\1.0\debug\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile>
+    </ConfigurationOverrideFile>
+    <DefineConstants>TRACE;DEBUG;NET;NET_2_0</DefineConstants>
+    <DocumentationFile>log4net.xml</DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <Optimize>false</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>full</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <OutputPath>..\build\bin\net\1.0\release\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile>
+    </ConfigurationOverrideFile>
+    <DefineConstants>TRACE;STRONG;NET;NET_1_0;</DefineConstants>
+    <DocumentationFile>log4net.xml</DocumentationFile>
+    <DebugSymbols>false</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <Optimize>true</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>none</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System">
+      <Name>System</Name>
+    </Reference>
+    <Reference Include="System.configuration" />
+    <Reference Include="System.Data">
+      <Name>System.Data</Name>
+    </Reference>
+    <Reference Include="System.Web">
+      <Name>System.Web</Name>
+    </Reference>
+    <Reference Include="System.Xml">
+      <Name>System.XML</Name>
+    </Reference>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Appender\AdoNetAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\AnsiColorTerminalAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\AppenderCollection.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\AppenderSkeleton.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\AspNetTraceAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\BufferingAppenderSkeleton.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\BufferingForwardingAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\ColoredConsoleAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\ConsoleAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\DebugAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\EventLogAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\FileAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\ForwardingAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\IAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\IBulkAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\LocalSyslogAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\MemoryAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\NetSendAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\OutputDebugStringAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\RemoteSyslogAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\RemotingAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\RollingFileAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\SmtpAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\SmtpPickupDirAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\TelnetAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\TextWriterAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\TraceAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\UdpAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="AssemblyInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="AssemblyVersionInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\AliasDomainAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\AliasRepositoryAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\BasicConfigurator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\ConfiguratorAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\DomainAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\DOMConfigurator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\DOMConfiguratorAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\Log4NetConfigurationSectionHandler.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\PluginAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\RepositoryAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\SecurityContextProviderAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\XmlConfigurator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Config\XmlConfiguratorAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\CompactRepositorySelector.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\DefaultRepositorySelector.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\ErrorCode.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\ExceptionEvaluator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\IAppenderAttachable.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\IErrorHandler.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\IFixingRequired.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\ILogger.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\ILoggerWrapper.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\IOptionHandler.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\IRepositorySelector.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\ITriggeringEventEvaluator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\Level.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\LevelCollection.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\LevelEvaluator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\LevelMap.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\LocationInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\LogException.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\LoggerManager.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\LoggerWrapperImpl.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\LoggingEvent.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\LogImpl.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\SecurityContext.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\SecurityContextProvider.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\WrapperMap.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="DateFormatter\AbsoluteTimeDateFormatter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="DateFormatter\DateTimeDateFormatter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="DateFormatter\IDateFormatter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="DateFormatter\Iso8601DateFormatter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="DateFormatter\SimpleDateFormatter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\DenyAllFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\FilterDecision.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\FilterSkeleton.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\IFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\LevelMatchFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\LevelRangeFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\LoggerMatchFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\MdcFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\NdcFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\PropertyFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Filter\StringMatchFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="GlobalContext.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="ILog.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\ExceptionLayout.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\ILayout.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\IRawLayout.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Layout2RawLayoutAdapter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\LayoutSkeleton.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\PatternLayout.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\AppDomainPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\AspNetCachePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\AspNetContextPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\AspNetPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\AspNetRequestPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\AspNetSessionPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\DatePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\ExceptionPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\FileLocationPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\FullLocationPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\IdentityPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\LevelPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\LineLocationPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\LoggerPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\MessagePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\MethodLocationPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\NamedPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\NdcPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\PatternLayoutConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\PropertyPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\RelativeTimePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\ThreadPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\TypeNamePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\UserNamePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\Pattern\UtcDatePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\RawLayoutConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\RawPropertyLayout.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\RawTimeStampLayout.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\RawUtcTimeStampLayout.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\SimpleLayout.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\XmlLayout.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\XmlLayoutBase.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\XmlLayoutSchemaLog4j.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="LogicalThreadContext.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="LogManager.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="MDC.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="NDC.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="ObjectRenderer\DefaultRenderer.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="ObjectRenderer\IObjectRenderer.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="ObjectRenderer\RendererMap.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Plugin\IPlugin.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Plugin\IPluginFactory.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Plugin\PluginCollection.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Plugin\PluginMap.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Plugin\PluginSkeleton.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Plugin\RemoteLoggingServerPlugin.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\ConfigurationChangedEventArgs.cs" />
+    <Compile Include="Repository\Hierarchy\DefaultLoggerFactory.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\Hierarchy\Hierarchy.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\Hierarchy\ILoggerFactory.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\Hierarchy\Logger.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\Hierarchy\LoggerKey.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\Hierarchy\ProvisionNode.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\Hierarchy\RootLogger.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\Hierarchy\XmlHierarchyConfigurator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\IBasicRepositoryConfigurator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\ILoggerRepository.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\IXmlRepositoryConfigurator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Repository\LoggerRepositorySkeleton.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="ThreadContext.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\AppenderAttachedImpl.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\CompositeProperties.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\ContextPropertiesBase.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\CountingQuietTextWriter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\CyclicBuffer.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\EmptyCollection.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\EmptyDictionary.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\FormattingInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\GlobalContextProperties.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\LevelMapping.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\LevelMappingEntry.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\LogicalThreadContextProperties.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\LogLog.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\NativeError.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\NullDictionaryEnumerator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\NullEnumerator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\NullSecurityContext.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\OnlyOnceErrorHandler.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\OptionConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternParser.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternString.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\AppDomainPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\DatePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\EnvironmentFolderPathPatternConverter.cs" />
+    <Compile Include="Util\PatternStringConverters\EnvironmentPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\IdentityPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\LiteralPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\NewLinePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\ProcessIdPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\PropertyPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\RandomStringPatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\UserNamePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PatternStringConverters\UtcDatePatternConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\PropertiesDictionary.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\ProtectCloseTextWriter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\QuietTextWriter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\ReaderWriterLock.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\ReadOnlyPropertiesDictionary.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\ReusableStringWriter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\SystemInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\SystemStringFormat.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TextWriterAdapter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\ThreadContextProperties.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\ThreadContextStack.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\ThreadContextStacks.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\Transform.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\BooleanConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\ConversionNotSupportedException.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\ConverterRegistry.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\EncodingConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\IConvertFrom.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\IConvertTo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\IPAddressConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\PatternLayoutConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\PatternStringConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\TypeConverter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\TypeConverters\TypeConverterAttribute.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\WindowsSecurityContext.cs">
+      <SubType>Code</SubType>
+    </Compile>
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <PropertyGroup>
+    <PreBuildEvent>
+    </PreBuildEvent>
+    <PostBuildEvent>
+    </PostBuildEvent>
+  </PropertyGroup>
+</Project>
\ No newline at end of file

Added: logging/log4net/trunk/src/log4net.vs2005.sln
URL: http://svn.apache.org/viewvc/logging/log4net/trunk/src/log4net.vs2005.sln?rev=607475&view=auto
==============================================================================
--- logging/log4net/trunk/src/log4net.vs2005.sln (added)
+++ logging/log4net/trunk/src/log4net.vs2005.sln Sat Dec 29 13:00:17 2007
@@ -0,0 +1,25 @@
+Microsoft Visual Studio Solution File, Format Version 9.00
+# Visual Studio 2005
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "log4net.vs2005", "log4net.vs2005.csproj", "{181FE707-E161-4722-9F38-6AAAB6FAA106}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "log4net.Tests.vs2005", "..\tests\src\log4net.Tests.vs2005.csproj", "{B0530F10-0238-49A9-93B0-8EF412E90BCF}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{181FE707-E161-4722-9F38-6AAAB6FAA106}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{181FE707-E161-4722-9F38-6AAAB6FAA106}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{181FE707-E161-4722-9F38-6AAAB6FAA106}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{181FE707-E161-4722-9F38-6AAAB6FAA106}.Release|Any CPU.Build.0 = Release|Any CPU
+		{B0530F10-0238-49A9-93B0-8EF412E90BCF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{B0530F10-0238-49A9-93B0-8EF412E90BCF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{B0530F10-0238-49A9-93B0-8EF412E90BCF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{B0530F10-0238-49A9-93B0-8EF412E90BCF}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+EndGlobal

Propchange: logging/log4net/trunk/tests/src/LoggerRepository/
------------------------------------------------------------------------------
--- bugtraq:logregex (added)
+++ bugtraq:logregex Sat Dec 29 13:00:17 2007
@@ -0,0 +1 @@
+(LOG4NET-\d+)

Propchange: logging/log4net/trunk/tests/src/LoggerRepository/
------------------------------------------------------------------------------
    bugtraq:url = http://issues.apache.org/jira/browse/%BUGID%

Added: logging/log4net/trunk/tests/src/LoggerRepository/ConfigurationMessages.cs
URL: http://svn.apache.org/viewvc/logging/log4net/trunk/tests/src/LoggerRepository/ConfigurationMessages.cs?rev=607475&view=auto
==============================================================================
--- logging/log4net/trunk/tests/src/LoggerRepository/ConfigurationMessages.cs (added)
+++ logging/log4net/trunk/tests/src/LoggerRepository/ConfigurationMessages.cs Sat Dec 29 13:00:17 2007
@@ -0,0 +1,74 @@
+using System;
+using System.Collections;
+using System.Xml;
+using log4net.Appender;
+using log4net.Config;
+using log4net.Core;
+using log4net.Repository;
+using log4net.Util;
+using NUnit.Framework;
+
+namespace log4net.Tests.LoggerRepository
+{
+    [TestFixture]
+    public class ConfigurationMessages
+    {
+        [Test]
+        public void ConfigurationMessagesTest()
+        {
+            LogLog.EmitInternalMessages = false;
+            LogLog.InternalDebugging = true;
+
+            XmlDocument log4netConfig = new XmlDocument();
+            log4netConfig.LoadXml(@"
+                <log4net>
+                  <appender name=""LogLogAppender"" type=""log4net.Tests.LoggerRepository.LogLogAppender, log4net.Tests"">
+                    <layout type=""log4net.Layout.SimpleLayout"" />
+                  </appender>
+                  <appender name=""MemoryAppender"" type=""log4net.Appender.MemoryAppender"">
+                    <layout type=""log4net.Layout.SimpleLayout"" />
+                  </appender>
+                  <root>
+                    <level value=""ALL"" />
+                    <appender-ref ref=""LogLogAppender"" />
+                    <appender-ref ref=""MemoryAppender"" />
+                  </root>  
+                </log4net>");
+
+            ILoggerRepository rep = LogManager.CreateRepository(Guid.NewGuid().ToString());
+            rep.ConfigurationChanged += new LoggerRepositoryConfigurationChangedEventHandler(rep_ConfigurationChanged);
+
+            ICollection configurationMessages = XmlConfigurator.Configure(rep, log4netConfig["log4net"]);
+
+            Assert.IsTrue(configurationMessages.Count > 0);
+        }
+
+        static void rep_ConfigurationChanged(object sender, EventArgs e)
+        {
+            ConfigurationChangedEventArgs configChanged = (ConfigurationChangedEventArgs)e;
+
+            Assert.IsTrue(configChanged.ConfigurationMessages.Count > 0);
+        }
+    }
+
+    public class LogLogAppender : AppenderSkeleton
+    {
+        private readonly static Type declaringType = typeof(LogLogAppender);
+
+        public override void ActivateOptions()
+        {
+            LogLog.Debug(declaringType, "Debug - Activating options...");
+            LogLog.Warn(declaringType, "Warn - Activating options...");
+            LogLog.Error(declaringType, "Error - Activating options...");
+
+            base.ActivateOptions();
+        }
+
+        protected override void Append(LoggingEvent loggingEvent)
+        {
+            LogLog.Debug(declaringType, "Debug - Appending...");
+            LogLog.Warn(declaringType, "Warn - Appending...");
+            LogLog.Error(declaringType, "Error - Appending...");
+        }
+    }
+}
\ No newline at end of file

Added: logging/log4net/trunk/tests/src/Util/LogLogTest.cs
URL: http://svn.apache.org/viewvc/logging/log4net/trunk/tests/src/Util/LogLogTest.cs?rev=607475&view=auto
==============================================================================
--- logging/log4net/trunk/tests/src/Util/LogLogTest.cs (added)
+++ logging/log4net/trunk/tests/src/Util/LogLogTest.cs Sat Dec 29 13:00:17 2007
@@ -0,0 +1,82 @@
+using System.Collections;
+using System.Diagnostics;
+using log4net.Util;
+using NUnit.Framework;
+
+namespace log4net.Tests.Util
+{
+    [TestFixture]
+    public class LogLogTest
+    {
+        [Test]
+        public void TraceListenerCounterTest()
+        {
+            TraceListenerCounter listTraceListener = new TraceListenerCounter();
+
+            Trace.Listeners.Clear();
+            Trace.Listeners.Add(listTraceListener);
+
+            Trace.Write("Hello");
+            Trace.Write("World");
+
+            Assert.AreEqual(2, listTraceListener.Count);
+        }
+
+        [Test]
+        public void EmitInternalMessages()
+        {
+            TraceListenerCounter listTraceListener = new TraceListenerCounter();
+            Trace.Listeners.Clear();
+            Trace.Listeners.Add(listTraceListener);
+            LogLog.Error(GetType(), "Hello");
+            LogLog.Error(GetType(), "World");
+            Assert.AreEqual(2, listTraceListener.Count);
+
+            LogLog.EmitInternalMessages = false;
+
+            LogLog.Error(GetType(), "Hello");
+            LogLog.Error(GetType(), "World");
+            Assert.AreEqual(2, listTraceListener.Count);
+        }
+
+        [Test]
+        public void LogReceivedAdapter()
+        {
+            ArrayList messages = new ArrayList();
+
+            using (new LogLog.LogReceivedAdapter(messages))
+            {
+                LogLog.Debug(GetType(), "Won't be recorded");
+                LogLog.Error(GetType(), "This will be recorded.");
+                LogLog.Error(GetType(), "This will be recorded.");
+            }
+
+            Assert.AreEqual(2, messages.Count);
+        }
+    }
+
+    public class TraceListenerCounter : TraceListener
+    {
+        private int count = 0;
+
+        public override void Write(string message)
+        {
+            count++;
+        }
+
+        public override void WriteLine(string message)
+        {
+            Write(message);
+        }
+
+        public void Reset()
+        {
+            count = 0;
+        }
+
+        public int Count
+        {
+            get { return count; }
+        }
+    }
+}
\ No newline at end of file

Added: logging/log4net/trunk/tests/src/log4net.Tests.vs2005.csproj
URL: http://svn.apache.org/viewvc/logging/log4net/trunk/tests/src/log4net.Tests.vs2005.csproj?rev=607475&view=auto
==============================================================================
--- logging/log4net/trunk/tests/src/log4net.Tests.vs2005.csproj (added)
+++ logging/log4net/trunk/tests/src/log4net.Tests.vs2005.csproj Sat Dec 29 13:00:17 2007
@@ -0,0 +1,169 @@
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ProjectType>Local</ProjectType>
+    <ProductVersion>8.0.50727</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{B0530F10-0238-49A9-93B0-8EF412E90BCF}</ProjectGuid>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ApplicationIcon>
+    </ApplicationIcon>
+    <AssemblyKeyContainerName>
+    </AssemblyKeyContainerName>
+    <AssemblyName>log4net.Tests</AssemblyName>
+    <AssemblyOriginatorKeyFile>
+    </AssemblyOriginatorKeyFile>
+    <DefaultClientScript>JScript</DefaultClientScript>
+    <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
+    <DefaultTargetSchema>IE50</DefaultTargetSchema>
+    <DelaySign>false</DelaySign>
+    <OutputType>Library</OutputType>
+    <RootNamespace>log4net.Tests</RootNamespace>
+    <StartupObject>
+    </StartupObject>
+    <FileUpgradeFlags>
+    </FileUpgradeFlags>
+    <UpgradeBackupLocation>
+    </UpgradeBackupLocation>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <OutputPath>..\bin\Debug\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile>
+    </ConfigurationOverrideFile>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <DocumentationFile>
+    </DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <Optimize>false</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>full</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <OutputPath>..\bin\Release\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile>
+    </ConfigurationOverrideFile>
+    <DefineConstants>TRACE</DefineConstants>
+    <DocumentationFile>
+    </DocumentationFile>
+    <DebugSymbols>false</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <Optimize>true</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>none</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="nunit.framework, Version=2.4.5.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\..\IBatisNet\External-Bin\Net\2.0\nunit.framework.dll</HintPath>
+    </Reference>
+    <Reference Include="System">
+      <Name>System</Name>
+    </Reference>
+    <Reference Include="System.Data">
+      <Name>System.Data</Name>
+    </Reference>
+    <Reference Include="System.Runtime.Remoting">
+      <Name>System.Runtime.Remoting</Name>
+    </Reference>
+    <Reference Include="System.Xml">
+      <Name>System.XML</Name>
+    </Reference>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="..\..\src\AssemblyVersionInfo.cs">
+      <Link>AssemblyVersionInfo.cs</Link>
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\BufferingAppenderTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\CountingAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\EventLogAppenderTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\RemotingAppenderTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\RollingFileAppenderTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Appender\StringAppender.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="AssemblyInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Context\ThreadContextTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\EvaluatorTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\FixingTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\ShutdownTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Core\StringFormatTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Hierarchy\Logger.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\PatternLayoutTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Layout\XmlLayoutTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="LoggerRepository\ConfigurationMessages.cs" />
+    <Compile Include="Utils.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\CyclicBufferTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\LogLogTest.cs" />
+    <Compile Include="Util\PatternStringTest.cs" />
+    <Compile Include="Util\PropertiesDictionaryTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\RandomStringPatternConverterTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Util\SystemInfoTest.cs">
+      <SubType>Code</SubType>
+    </Compile>
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\..\src\log4net.vs2005.csproj">
+      <Project>{181FE707-E161-4722-9F38-6AAAB6FAA106}</Project>
+      <Name>log4net.vs2005</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <PropertyGroup>
+    <PreBuildEvent>
+    </PreBuildEvent>
+    <PostBuildEvent>
+    </PostBuildEvent>
+  </PropertyGroup>
+</Project>
\ No newline at end of file