using System.Configuration;
namespace Umbraco.Core.Configuration
{
// note - still must work on how to support read-only and ResetSection for collections
// note - still must work on how to spread config over files (aka DeepConfig in v5)
///
/// Represents an Umbraco section within the configuration file.
///
///
/// The requirement for these sections is to be read-only.
/// However for unit tests purposes it is internally possible to override some values, and
/// then calling >ResetSection should cancel these changes and bring the section back to
/// what it was originally.
/// The UmbracoSettings.For{T} method will return a section, either one that
/// is in the configuration file, or a section that was created with default values.
///
public abstract class UmbracoConfigurationSection : ConfigurationSection
{
///
/// Gets a value indicating whether the section actually is in the configuration file.
///
protected bool IsPresent { get { return ElementInformation.IsPresent; } }
///
/// Resets settings that were set programmatically, to their initial values.
///
/// >To be used in unit tests.
internal protected virtual void ResetSection()
{ }
}
}