nicko 2004/06/06 18:05:14
Modified: src/Core WrapperMap.cs
Log:
Replaced indexer property with GetWrapper method
Revision Changes Path
1.5 +32 -37 logging-log4net/src/Core/WrapperMap.cs
Index: WrapperMap.cs
===================================================================
RCS file: /home/cvs/logging-log4net/src/Core/WrapperMap.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- WrapperMap.cs 2 Jun 2004 16:17:09 -0000 1.4
+++ WrapperMap.cs 7 Jun 2004 01:05:14 -0000 1.5
@@ -69,55 +69,50 @@
/// <summary>
/// Gets the wrapper object for the specified logger.
/// </summary>
- /// <value>
- /// The wrapper object for the specified logger.
- /// </value>
/// <remarks>
/// If the logger is null then the corresponding wrapper is null
/// </remarks>
- virtual public ILoggerWrapper this[ILogger logger]
+ /// <returns>The wrapper object for the specified
logger</returns>
+ virtual public ILoggerWrapper GetWrapper(ILogger logger)
{
- get
+ // If the logger is null then the corresponding wrapper
is null
+ if (logger == null)
{
- // If the logger is null then the corresponding
wrapper is null
- if (logger == null)
+ return null;
+ }
+
+ lock(this)
+ {
+ // Lookup hierarchy in map.
+ Hashtable wrappersMap =
(Hashtable)m_repositories[logger.Repository];
+
+ if (wrappersMap == null)
{
- return null;
+ // Hierarchy does not exist in map.
+ // Must register with hierarchy
+
+ wrappersMap = new Hashtable();
+ m_repositories[logger.Repository] =
wrappersMap;
+
+ // Register for config reset & shutdown
on repository
+ logger.Repository.ShutdownEvent +=
m_shutdownHandler;
}
- lock(this)
- {
- // Lookup hierarchy in map.
- Hashtable wrappersMap =
(Hashtable)m_repositories[logger.Repository];
+ // Look for the wrapper object in the map
+ ILoggerWrapper wrapperObject =
wrappersMap[logger] as ILoggerWrapper;
- if (wrappersMap == null)
- {
- // Hierarchy does not exist in
map.
- // Must register with hierarchy
-
- wrappersMap = new Hashtable();
-
m_repositories[logger.Repository] = wrappersMap;
-
- // Register for config reset &
shutdown on repository
- logger.Repository.ShutdownEvent
+= m_shutdownHandler;
- }
-
- // Look for the wrapper object in the
map
- ILoggerWrapper wrapperObject =
wrappersMap[logger] as ILoggerWrapper;
-
- if (wrapperObject == null)
- {
- // No wrapper object exists for
the specified logger
+ if (wrapperObject == null)
+ {
+ // No wrapper object exists for the
specified logger
- // Create a new wrapper
wrapping the logger
- wrapperObject =
CreateNewWrapperObject(logger);
+ // Create a new wrapper wrapping the
logger
+ wrapperObject =
CreateNewWrapperObject(logger);
- // Store wrapper logger in map
- wrappersMap[logger] =
wrapperObject;
- }
-
- return wrapperObject;
+ // Store wrapper logger in map
+ wrappersMap[logger] = wrapperObject;
}
+
+ return wrapperObject;
}
}