﻿<html xmlns:MSHelp="http://msdn.microsoft.com/mshelp" xmlns:mshelp="http://msdn.microsoft.com/mshelp"><head><link rel="SHORTCUT ICON" href="./../icons/favicon.ico" /><style type="text/css">.OH_CodeSnippetContainerTabLeftActive, .OH_CodeSnippetContainerTabLeft,.OH_CodeSnippetContainerTabLeftDisabled { backgroundImageName: tabLeftBG.gif; }.OH_CodeSnippetContainerTabRightActive, .OH_CodeSnippetContainerTabRight,.OH_CodeSnippetContainerTabRightDisabled { backgroundImageName: tabRightBG.gif; }.OH_footer { backgroundImageName: footer_slice.gif; background-position: top; background-repeat: repeat-x; }</style><link rel="stylesheet" type="text/css" href="./../styles/branding.css" /><link rel="stylesheet" type="text/css" href="./../styles/branding-en-US.css" /><style type="text/css">
			body
			{
			border-left:5px solid #e6e6e6;
			overflow-x:scroll;
			overflow-y:scroll;
			}
		</style><script src="./../scripts/branding.js" type="text/javascript"><!----></script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Hierarchy Members</title><meta name="Language" content="en-us" /><meta name="System.Keywords" content="Hierarchy class" /><meta name="System.Keywords" content="Hierarchy class, all members" /><meta name="System.Keywords" content="log4net.Repository.Hierarchy.Hierarchy class" /><meta name="Microsoft.Help.Id" content="AllMembers.T:log4net.Repository.Hierarchy.Hierarchy" /><meta name="Microsoft.Help.ContentType" content="Reference" /><meta name="BrandingAware" content="'true'" /><meta name="container" content="log4net.Repository.Hierarchy" /><meta name="file" content="AllMembers_T_log4net_Repository_Hierarchy_Hierarchy" /><meta name="guid" content="AllMembers_T_log4net_Repository_Hierarchy_Hierarchy" /><link type="text/css" rel="stylesheet" href="ms-help://Hx/HxRuntime/HxLink.css" /><meta name="SelfBranded" content="true" /></head><body onload="onLoad()" class="primary-mtps-offline-document"><div class="OH_outerDiv"><div class="OH_outerContent"><table class="TitleTable"><tr><td class="OH_tdTitleColumn">Hierarchy Members</td><td class="OH_tdRunningTitleColumn">Apache log4net™ SDK Documentation</td></tr></table><div id="mainSection"><div id="mainBody"><span class="introStyle"></span>The <a href="T_log4net_Repository_Hierarchy_Hierarchy.htm" target="">Hierarchy</a> type exposes the following members.<div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Constructors</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><table id="memberList" class="members"><tr><th class="ps_iconColumn">
							 
						</th><th class="ps_nameColumn">Name</th><th class="ps_descriptionColumn">Description</th></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy__ctor.htm" target="">Hierarchy<span id="ID0EAABDBFAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EAABDBFAAAAA?vb=|cpp=()|cs=()|fs=()|nu=()");
				</script></a></td><td><div class="summary">
            Default constructor
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy__ctor_1.htm" target="">Hierarchy(ILoggerFactory)</a></td><td><div class="summary">
            Construct with a logger factory
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy__ctor_2.htm" target="">Hierarchy(PropertiesDictionary)</a></td><td><div class="summary">
            Construct with properties
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy__ctor_3.htm" target="">Hierarchy(PropertiesDictionary, ILoggerFactory)</a></td><td><div class="summary">
            Construct with properties and a logger factory
            </div></td></tr></table><a href="#mainBody" target="">Back to Top</a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Methods</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><table id="memberList" class="members"><tr><th class="ps_iconColumn">
							 
						</th><th class="ps_nameColumn">Name</th><th class="ps_descriptionColumn">Description</th></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_LoggerRepositorySkeleton_AddRenderer.htm" target="">AddRenderer</a></td><td><div class="summary">
            Adds an object renderer for a specific class. 
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="protected;declared;notNetfw;"><td><img src="./../icons/protmethod.gif" alt="Protected method" title="Protected method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_BasicRepositoryConfigure.htm" target="">BasicRepositoryConfigure</a></td><td><div class="summary">
            Initialize the log4net system using the specified appenders
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_Clear.htm" target="">Clear</a></td><td><div class="summary">
            Clear all logger definitions from the internal hashtable
            </div></td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/bsc2ak47" target="_blank">Equals</a></td><td><div class="summary">
                    Determines whether the specified <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a> is equal to the current <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.
                </div> (Inherited from <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_Exists.htm" target="">Exists</a></td><td><div class="summary">
            Test if a logger exists
            </div> (Overrides <a href="M_log4net_Repository_LoggerRepositorySkeleton_Exists.htm" target="">LoggerRepositorySkeleton<span id="ID0EBBATBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBBATBEAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>Exists(String)</a>.)</td></tr><tr data="protected;inherited;notNetfw;"><td><img src="./../icons/protmethod.gif" alt="Protected method" title="Protected method" /></td><td><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/4k87zsw7" target="_blank">Finalize</a></td><td><div class="summary">
                    Allows an <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a> to attempt to free resources and perform other cleanup operations before the <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a> is reclaimed by garbage collection.
                </div> (Inherited from <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_GetAppenders.htm" target="">GetAppenders</a></td><td><div class="summary">
            Returns all the Appenders that are currently configured
            </div> (Overrides <a href="M_log4net_Repository_LoggerRepositorySkeleton_GetAppenders.htm" target="">LoggerRepositorySkeleton<span id="ID0ECBARBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0ECBARBEAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>GetAppenders<span id="ID0EABARBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EABARBEAAAAA?vb=|cpp=()|cs=()|fs=()|nu=()");
				</script></a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_GetCurrentLoggers.htm" target="">GetCurrentLoggers</a></td><td><div class="summary">
            Returns all the currently defined loggers in the hierarchy as an Array
            </div> (Overrides <a href="M_log4net_Repository_LoggerRepositorySkeleton_GetCurrentLoggers.htm" target="">LoggerRepositorySkeleton<span id="ID0ECBAQBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0ECBAQBEAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>GetCurrentLoggers<span id="ID0EABAQBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EABAQBEAAAAA?vb=|cpp=()|cs=()|fs=()|nu=()");
				</script></a>.)</td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/zdee4b3y" target="_blank">GetHashCode</a></td><td><div class="summary">
                    Serves as a hash function for a particular type. 
                </div> (Inherited from <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_GetLogger.htm" target="">GetLogger(String)</a></td><td><div class="summary">
            Return a new logger instance named as the first parameter using
            the default factory.
            </div> (Overrides <a href="M_log4net_Repository_LoggerRepositorySkeleton_GetLogger.htm" target="">LoggerRepositorySkeleton<span id="ID0EBBAOBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBBAOBEAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>GetLogger(String)</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_GetLogger_1.htm" target="">GetLogger(String, ILoggerFactory)</a></td><td><div class="summary">
            Return a new logger instance named as the first parameter using
            <span class="parameter">factory</span>.
            </div></td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/dfwy45w9" target="_blank">GetType</a></td><td><div class="summary">
                    Gets the <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/42892f65" target="_blank">Type</a> of the current instance.
                </div> (Inherited from <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_IsDisabled.htm" target="">IsDisabled</a></td><td><div class="summary">
            Test if this hierarchy is disabled for the specified <a href="T_log4net_Core_Level.htm" target="">Level</a>.
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_Log.htm" target="">Log</a></td><td><div class="summary">
            Log the logEvent through this hierarchy.
            </div> (Overrides <a href="M_log4net_Repository_LoggerRepositorySkeleton_Log.htm" target="">LoggerRepositorySkeleton<span id="ID0EBBAKBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBBAKBEAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>Log(LoggingEvent)</a>.)</td></tr><tr data="protected;inherited;notNetfw;"><td><img src="./../icons/protmethod.gif" alt="Protected method" title="Protected method" /></td><td><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/57ctke0a" target="_blank">MemberwiseClone</a></td><td><div class="summary">
                    Creates a shallow copy of the current <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.
                </div> (Inherited from <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.)</td></tr><tr data="protected;inherited;notNetfw;"><td><img src="./../icons/protmethod.gif" alt="Protected method" title="Protected method" /></td><td><a href="M_log4net_Repository_LoggerRepositorySkeleton_OnConfigurationChanged.htm" target="">OnConfigurationChanged</a></td><td><div class="summary">
            Notify the registered listeners that the repository has had its configuration changed
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="protected;inherited;notNetfw;"><td><img src="./../icons/protmethod.gif" alt="Protected method" title="Protected method" /></td><td><a href="M_log4net_Repository_LoggerRepositorySkeleton_OnConfigurationReset.htm" target="">OnConfigurationReset</a></td><td><div class="summary">
            Notify the registered listeners that the repository has had its configuration reset
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="protected;declared;notNetfw;"><td><img src="./../icons/protmethod.gif" alt="Protected method" title="Protected method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_OnLoggerCreationEvent.htm" target="">OnLoggerCreationEvent</a></td><td><div class="summary">
            Sends a logger creation event to all registered listeners
            </div></td></tr><tr data="protected;inherited;notNetfw;"><td><img src="./../icons/protmethod.gif" alt="Protected method" title="Protected method" /></td><td><a href="M_log4net_Repository_LoggerRepositorySkeleton_OnShutdown.htm" target="">OnShutdown</a></td><td><div class="summary">
            Notify the registered listeners that the repository is shutting down
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_LoggerRepositorySkeleton_RaiseConfigurationChanged.htm" target="">RaiseConfigurationChanged</a></td><td><div class="summary">
            Raise a configuration changed event on this repository
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_ResetConfiguration.htm" target="">ResetConfiguration</a></td><td><div class="summary">
            Reset all values contained in this hierarchy instance to their default.
            </div> (Overrides <a href="M_log4net_Repository_LoggerRepositorySkeleton_ResetConfiguration.htm" target="">LoggerRepositorySkeleton<span id="ID0ECBADBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0ECBADBEAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>ResetConfiguration<span id="ID0EABADBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EABADBEAAAAA?vb=|cpp=()|cs=()|fs=()|nu=()");
				</script></a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_Shutdown.htm" target="">Shutdown</a></td><td><div class="summary">
            Shutting down a hierarchy will <i>safely</i> close and remove
            all appenders in all loggers including the root logger.
            </div> (Overrides <a href="M_log4net_Repository_LoggerRepositorySkeleton_Shutdown.htm" target="">LoggerRepositorySkeleton<span id="ID0ECBACBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0ECBACBEAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>Shutdown<span id="ID0EABACBEAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EABACBEAAAAA?vb=|cpp=()|cs=()|fs=()|nu=()");
				</script></a>.)</td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/7bxwbwt2" target="_blank">ToString</a></td><td><div class="summary">
                    Returns a <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/s1wwdcbf" target="_blank">String</a> that represents the current <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.
                </div> (Inherited from <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.)</td></tr><tr data="protected;declared;notNetfw;"><td><img src="./../icons/protmethod.gif" alt="Protected method" title="Protected method" /></td><td><a href="M_log4net_Repository_Hierarchy_Hierarchy_XmlRepositoryConfigure.htm" target="">XmlRepositoryConfigure</a></td><td><div class="summary">
            Initialize the log4net system using the specified config
            </div></td></tr></table><a href="#mainBody" target="">Back to Top</a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Properties</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><table id="memberList" class="members"><tr><th class="ps_iconColumn">
							 
						</th><th class="ps_nameColumn">Name</th><th class="ps_descriptionColumn">Description</th></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_LoggerRepositorySkeleton_ConfigurationMessages.htm" target="">ConfigurationMessages</a></td><td><div class="summary">
            Contains a list of internal messages captures during the 
            last configuration.
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_LoggerRepositorySkeleton_Configured.htm" target="">Configured</a></td><td><div class="summary">
            Flag indicates if this repository has been configured.
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_Hierarchy_Hierarchy_EmittedNoAppenderWarning.htm" target="">EmittedNoAppenderWarning</a></td><td><div class="summary">
            Has no appender warning been emitted
            </div></td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_LoggerRepositorySkeleton_LevelMap.htm" target="">LevelMap</a></td><td><div class="summary">
            Get the level map for the Repository.
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_Hierarchy_Hierarchy_LoggerFactory.htm" target="">LoggerFactory</a></td><td><div class="summary">
            Gets or sets the default <a href="T_log4net_Repository_Hierarchy_ILoggerFactory.htm" target="">ILoggerFactory</a> instance.
            </div></td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_LoggerRepositorySkeleton_Name.htm" target="">Name</a></td><td><div class="summary">
            The name of the repository
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_LoggerRepositorySkeleton_PluginMap.htm" target="">PluginMap</a></td><td><div class="summary">
            The plugin map for this repository.
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_LoggerRepositorySkeleton_Properties.htm" target="">Properties</a></td><td><div class="summary">
            Repository specific properties
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_LoggerRepositorySkeleton_RendererMap.htm" target="">RendererMap</a></td><td><div class="summary">
            RendererMap accesses the object renderer map for this repository.
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_Hierarchy_Hierarchy_Root.htm" target="">Root</a></td><td><div class="summary">
            Get the root of this hierarchy
            </div></td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Repository_LoggerRepositorySkeleton_Threshold.htm" target="">Threshold</a></td><td><div class="summary">
            The threshold for all events in this repository
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr></table><a href="#mainBody" target="">Back to Top</a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Events</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><table id="memberList" class="members"><tr><th class="ps_iconColumn">
							 
						</th><th class="ps_nameColumn">Name</th><th class="ps_descriptionColumn">Description</th></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubevent.gif" alt="Public event" title="Public event" /></td><td><a href="E_log4net_Repository_LoggerRepositorySkeleton_ConfigurationChanged.htm" target="">ConfigurationChanged</a></td><td><div class="summary">
            Event to notify that the repository has had its configuration changed.
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubevent.gif" alt="Public event" title="Public event" /></td><td><a href="E_log4net_Repository_LoggerRepositorySkeleton_ConfigurationReset.htm" target="">ConfigurationReset</a></td><td><div class="summary">
            Event to notify that the repository has had its configuration reset.
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="./../icons/pubevent.gif" alt="Public event" title="Public event" /></td><td><a href="E_log4net_Repository_Hierarchy_Hierarchy_LoggerCreatedEvent.htm" target="">LoggerCreatedEvent</a></td><td><div class="summary">
            Event used to notify that a logger has been created.
            </div></td></tr><tr data="public;inherited;notNetfw;"><td><img src="./../icons/pubevent.gif" alt="Public event" title="Public event" /></td><td><a href="E_log4net_Repository_LoggerRepositorySkeleton_ShutdownEvent.htm" target="">ShutdownEvent</a></td><td><div class="summary">
            Event to notify that the repository has been shutdown.
            </div> (Inherited from <a href="T_log4net_Repository_LoggerRepositorySkeleton.htm" target="">LoggerRepositorySkeleton</a>.)</td></tr></table><a href="#mainBody" target="">Back to Top</a><a name="seeAlsoSection"><!----></a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">See Also</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><div class="seeAlsoStyle"><a href="T_log4net_Repository_Hierarchy_Hierarchy.htm" target="">Hierarchy Class</a></div><div class="seeAlsoStyle"><a href="N_log4net_Repository_Hierarchy.htm" target="">log4net.Repository.Hierarchy Namespace</a></div></div></div></div></div><div id="OH_footer" class="OH_footer"><p>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</p><p><a href="http://logging.apache.org/log4net/" target="_blank"><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /> 
						Copyright 2004-2015 The Apache Software Foundation (http://logging.apache.org/log4net/)</a></p><div class="OH_feedbacklink"><a href="mailto:http://logging.apache.org/log4net/mail-lists.html?subject=Apache+log4net%e2%84%a2+SDK+Documentation+Hierarchy+Members+100+EN-US&amp;body=Your%20feedback%20is%20used%20to%20improve%20the%20documentation%20and%20the%20product.%20Your%20e-mail%20address%20will%20not%20be%20used%20for%20any%20other%20purpose%20and%20is%20disposed%20of%20after%20the%20issue%20you%20report%20is%20resolved.%20While%20working%20to%20resolve%20the%20issue%20that%20you%20report%2c%20you%20may%20be%20contacted%20via%20e-mail%20to%20get%20further%20details%20or%20clarification%20on%20the%20feedback%20you%20sent.%20After%20the%20issue%20you%20report%20has%20been%20addressed%2c%20you%20may%20receive%20an%20e-mail%20to%20let%20you%20know%20that%20your%20feedback%20has%20been%20addressed.">Send Feedback</a> on this topic to http://logging.apache.org/log4net/mail-lists.html.</div></div></body></html>