namespace CardReaderService
{
///
/// An object used to detail an element that can be configured in the system.
///
public class ConfigurationProperty
{
///
/// Unique Id for the configuration property.
///
public string Id { get; set; }
///
/// The display name of the configuration
///
public string Name { get; set; }
///
/// The group under which this configuration falls (e.g.: TCP Settings - "TCP" or similar.)
///
/// Application Specific grouping.
public string Group { get; set; }
///
/// The actual value of the Configuration property
///
public string Value { get; set; }
///
/// The source of the configuration properties.
///
///
/// Using this property allows aggregation of configuration settings
/// by any configuration managers
///
/// {TYPE}.getType().Name (or other suitably unique identifier)
public string Source { get; set; }
///
/// The type of the configuration
///
///
/// This can be used for UI proofing/validation to ensure a user
/// enters expected format (e.g.: enters a date time for a datetime type)
///
public ConfigurationType Type { get; set; }
///
/// Specifies whether the configuration setting can be set by user or is readonly
///
public bool ReadOnly { get; set; }
//TODO: in future, add access level, could go read level/edit level
//public UserAccessLevel UserLevel {get;set;}
}
}