TraceSection
using System.Configuration;
namespace System.Diagnostics
{
internal sealed class TraceSection : ConfigurationElement
{
private static readonly ConfigurationPropertyCollection s_properties;
private static readonly ConfigurationProperty s_propListeners;
private static readonly ConfigurationProperty s_propAutoFlush;
private static readonly ConfigurationProperty s_propIndentSize;
private static readonly ConfigurationProperty s_propUseGlobalLock;
[ConfigurationProperty("autoflush", DefaultValue = false)]
public bool AutoFlush {
get {
return (bool)base[s_propAutoFlush];
}
}
[ConfigurationProperty("indentsize", DefaultValue = 4)]
public int IndentSize {
get {
return (int)base[s_propIndentSize];
}
}
[ConfigurationProperty("listeners")]
public ListenerElementsCollection Listeners {
get {
return (ListenerElementsCollection)base[s_propListeners];
}
}
[ConfigurationProperty("useGlobalLock", DefaultValue = true)]
public bool UseGlobalLock {
get {
return (bool)base[s_propUseGlobalLock];
}
}
protected internal override ConfigurationPropertyCollection Properties => s_properties;
static TraceSection()
{
s_properties = new ConfigurationPropertyCollection();
s_propListeners = new ConfigurationProperty("listeners", typeof(ListenerElementsCollection), null, ConfigurationPropertyOptions.None);
s_propAutoFlush = new ConfigurationProperty("autoflush", typeof(bool), false, ConfigurationPropertyOptions.None);
s_propIndentSize = new ConfigurationProperty("indentsize", typeof(int), 4, ConfigurationPropertyOptions.None);
s_propUseGlobalLock = new ConfigurationProperty("useGlobalLock", typeof(bool), true, ConfigurationPropertyOptions.None);
s_properties.Add(s_propListeners);
s_properties.Add(s_propAutoFlush);
s_properties.Add(s_propIndentSize);
s_properties.Add(s_propUseGlobalLock);
}
}
}