kreta/KretaWeb/Configuration/MobileApiConfigurationSection.cs
2024-03-13 00:33:46 +01:00

50 lines
1.4 KiB
C#

using System;
using System.Configuration;
namespace Kreta.Web.Configuration
{
/// <summary>
/// Authorization configuration section for mobile API
/// </summary>
/// <seealso cref="System.Configuration.ConfigurationSection" />
public class MobileApiConfigurationSection : ConfigurationSection
{
const string SectionName = "MobileApiAuthorization";
/// <summary>
/// The instance
/// </summary>
static Lazy<MobileApiConfigurationSection> instance;
/// <summary>
/// Gets the instance.
/// </summary>
/// <value>
/// The instance.
/// </value>
public static MobileApiConfigurationSection Instance
{
get
{
return instance.Value;
}
}
[ConfigurationProperty(nameof(ApiKey), IsRequired = true)]
public string ApiKey
{
get
{
return (string)this[nameof(ApiKey)];
}
}
/// <summary>
/// Initializes the <see cref="MobileApiConfigurationSection"/> class.
/// </summary>
static MobileApiConfigurationSection()
{
instance = new Lazy<MobileApiConfigurationSection>(() => (MobileApiConfigurationSection)ConfigurationManager.GetSection(SectionName));
}
}
}