You've already forked linux-packaging-mono
							
							
		
			
				
	
	
		
			260 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			260 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| //------------------------------------------------------------------------------
 | |
| // <copyright file="SettingsAttributes.cs" company="Microsoft">
 | |
| //     Copyright (c) Microsoft Corporation.  All rights reserved.
 | |
| // </copyright>                                                                
 | |
| //------------------------------------------------------------------------------
 | |
| 
 | |
| namespace System.Configuration
 | |
| {
 | |
|     using System;
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Indicates that a setting is to be stored on a per-application basis.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Property)]
 | |
|     public sealed class ApplicationScopedSettingAttribute : SettingAttribute {
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Indicates to the provider what default value to use for this setting when no stored value
 | |
|     ///     is found. The value should be encoded into a string and is interpreted based on the SerializeAs
 | |
|     ///     value for this setting. For example, if SerializeAs is Xml, the default value will be
 | |
|     ///     "stringified" Xml.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Property)]
 | |
|     public sealed class DefaultSettingValueAttribute : Attribute {
 | |
|         private readonly string _value;
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Constructor takes the default value as string.
 | |
|         /// </devdoc>
 | |
|         public DefaultSettingValueAttribute(string value) {
 | |
|             _value = value;
 | |
|         }
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Default value.
 | |
|         /// </devdoc>
 | |
|         public string Value {
 | |
|             get {
 | |
|                 return _value;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Indicates that the provider should disable any logic that gets invoked when an application
 | |
|     ///     upgrade is detected.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Property)]
 | |
|     public sealed class NoSettingsVersionUpgradeAttribute : Attribute {
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Use this attribute to mark properties on a settings class that are to be treated
 | |
|     ///     as settings. ApplicationSettingsBase will ignore all properties not marked with
 | |
|     ///     this or a derived attribute.
 | |
|     /// </devdoc>
 | |
|     [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1813:AvoidUnsealedAttributes")]
 | |
|     [AttributeUsage(AttributeTargets.Property)]
 | |
|     public class SettingAttribute : Attribute {
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Description for a particular setting.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Property)]
 | |
|     public sealed class SettingsDescriptionAttribute : Attribute {
 | |
|         private readonly string _desc;
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Constructor takes the description string.
 | |
|         /// </devdoc>
 | |
|         public SettingsDescriptionAttribute(string description) {
 | |
|             _desc = description;
 | |
|         }
 | |
|     
 | |
|         /// <devdoc>
 | |
|         ///     Description string.
 | |
|         /// </devdoc>
 | |
|         public string Description {
 | |
|             get {
 | |
|                 return _desc;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Description for a particular settings group.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Class)]
 | |
|     public sealed class SettingsGroupDescriptionAttribute : Attribute {
 | |
|         private readonly string _desc;
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Constructor takes the description string.
 | |
|         /// </devdoc>
 | |
|         public SettingsGroupDescriptionAttribute(string description) {
 | |
|             _desc = description;
 | |
|         }
 | |
|     
 | |
|         /// <devdoc>
 | |
|         ///     Description string.
 | |
|         /// </devdoc>
 | |
|         public string Description {
 | |
|             get {
 | |
|                 return _desc;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Name of a particular settings group.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Class)]
 | |
|     public sealed class SettingsGroupNameAttribute : Attribute {
 | |
|         private readonly string _groupName;
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Constructor takes the group name.
 | |
|         /// </devdoc>
 | |
|         public SettingsGroupNameAttribute(string groupName) {
 | |
|             _groupName = groupName;
 | |
|         }
 | |
|     
 | |
|         /// <devdoc>
 | |
|         ///     Name of the settings group.
 | |
|         /// </devdoc>
 | |
|         public string GroupName {
 | |
|             get {
 | |
|                 return _groupName;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Indicates the SettingsManageability for a group of/individual setting.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property)]
 | |
|     public sealed class SettingsManageabilityAttribute : Attribute {
 | |
|         private readonly SettingsManageability _manageability;
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Constructor takes a SettingsManageability enum value.
 | |
|         /// </devdoc>
 | |
|         public SettingsManageabilityAttribute(SettingsManageability manageability) {
 | |
|             _manageability = manageability;
 | |
|         }
 | |
|     
 | |
|         /// <devdoc>
 | |
|         ///     SettingsManageability value to use
 | |
|         /// </devdoc>
 | |
|         public SettingsManageability Manageability {
 | |
|             get {
 | |
|                 return _manageability;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Indicates the provider associated with a group of/individual setting.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property)]
 | |
|     public sealed class SettingsProviderAttribute : Attribute {
 | |
|         private readonly string _providerTypeName;
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Constructor takes the provider's assembly qualified type name.
 | |
|         /// </devdoc>
 | |
|         public SettingsProviderAttribute(string providerTypeName) {
 | |
|             _providerTypeName = providerTypeName;
 | |
|         }
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Constructor takes the provider's type.
 | |
|         /// </devdoc>
 | |
|         public SettingsProviderAttribute(Type providerType) {
 | |
|             if (providerType != null) {
 | |
|                 _providerTypeName = providerType.AssemblyQualifiedName;
 | |
|             }
 | |
|         }
 | |
|     
 | |
|         /// <devdoc>
 | |
|         ///     Type name of the provider
 | |
|         /// </devdoc>
 | |
|         public string ProviderTypeName {
 | |
|             get {
 | |
|                 return _providerTypeName;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Indicates the SettingsSerializeAs for a group of/individual setting.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property)]
 | |
|     public sealed class SettingsSerializeAsAttribute : Attribute {
 | |
|         private readonly SettingsSerializeAs _serializeAs;
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Constructor takes a SettingsSerializeAs enum value.
 | |
|         /// </devdoc>
 | |
|         public SettingsSerializeAsAttribute(SettingsSerializeAs serializeAs) {
 | |
|             _serializeAs = serializeAs;
 | |
|         }
 | |
|     
 | |
|         /// <devdoc>
 | |
|         ///     SettingsSerializeAs value to use
 | |
|         /// </devdoc>
 | |
|         public SettingsSerializeAs SerializeAs {
 | |
|             get {
 | |
|                 return _serializeAs;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Indicates the SpecialSetting for a group of/individual setting.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property)]
 | |
|     public sealed class SpecialSettingAttribute : Attribute {
 | |
|         private readonly SpecialSetting _specialSetting;
 | |
| 
 | |
|         /// <devdoc>
 | |
|         ///     Constructor takes a SpecialSetting enum value.
 | |
|         /// </devdoc>
 | |
|         public SpecialSettingAttribute(SpecialSetting specialSetting) {
 | |
|             _specialSetting = specialSetting;
 | |
|         }
 | |
|     
 | |
|         /// <devdoc>
 | |
|         ///     SpecialSetting value to use
 | |
|         /// </devdoc>
 | |
|         public SpecialSetting SpecialSetting {
 | |
|             get {
 | |
|                 return _specialSetting;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Indicates that a setting is to be stored on a per-user basis.
 | |
|     /// </devdoc>
 | |
|     [AttributeUsage(AttributeTargets.Property)]
 | |
|     public sealed class UserScopedSettingAttribute : SettingAttribute {
 | |
|     }
 | |
| 
 | |
|     public enum  SettingsManageability {
 | |
|        Roaming = 0
 | |
|     }
 | |
| 
 | |
|     /// <devdoc>
 | |
|     ///     Indicates settings that are to be treated "specially".
 | |
|     /// </devdoc>
 | |
|     public enum  SpecialSetting {
 | |
|        ConnectionString = 0,
 | |
|        WebServiceUrl = 1
 | |
|     }
 | |
| }
 | |
| 
 |