1 //------------------------------------------------------------------------------ 2 // <copyright file="SectionXmlInfo.cs" company="Microsoft"> 3 // Copyright (c) Microsoft Corporation. All rights reserved. 4 // </copyright> 5 //------------------------------------------------------------------------------ 6 7 namespace System.Configuration { 8 using System.Configuration.Internal; 9 using System.Collections; 10 using System.Collections.Specialized; 11 using System.Collections.Generic; 12 using System.Configuration; 13 using System.Text; 14 using System.Threading; 15 using System.Reflection; 16 using System.Xml; 17 18 internal sealed class SectionXmlInfo : IConfigErrorInfo { 19 private string _configKey; // configKey 20 private string _definitionConfigPath; // the config path of the configuration record where this directive was defined 21 private string _targetConfigPath; // the full config path this location directive applies to 22 private string _subPath; // the "path" attribute specified in the <location> directive 23 private string _filename; // filename containg this section definition 24 private int _lineNumber; // line number where definition occurs 25 private object _streamVersion; // version of the filestream containing this section 26 private string _configSource; // the "configSource" attribute 27 private string _configSourceStreamName; // filename of the configSource 28 private object _configSourceStreamVersion; // version of the configSource filestream 29 private bool _skipInChildApps; // skip inheritence by child apps? 30 private string _rawXml; // raw xml input of the section 31 private string _configBuilderName; // name of the configuration provider 32 private string _protectionProviderName; // name of the protection provider 33 34 private OverrideModeSetting _overrideMode; // override mode for child config paths 35 SectionXmlInfo( string configKey, string definitionConfigPath, string targetConfigPath, string subPath, string filename, int lineNumber, object streamVersion, string rawXml, string configSource, string configSourceStreamName, object configSourceStreamVersion, string configBuilderName, string protectionProviderName, OverrideModeSetting overrideMode, bool skipInChildApps)36 internal SectionXmlInfo( 37 string configKey, string definitionConfigPath, string targetConfigPath, string subPath, 38 string filename, int lineNumber, object streamVersion, 39 string rawXml, string configSource, string configSourceStreamName, object configSourceStreamVersion, 40 string configBuilderName, string protectionProviderName, OverrideModeSetting overrideMode, bool skipInChildApps) { 41 42 _configKey = configKey; 43 _definitionConfigPath = definitionConfigPath; 44 _targetConfigPath = targetConfigPath; 45 _subPath = subPath; 46 _filename = filename; 47 _lineNumber = lineNumber; 48 _streamVersion = streamVersion; 49 _rawXml = rawXml; 50 _configSource = configSource; 51 _configSourceStreamName = configSourceStreamName; 52 _configSourceStreamVersion = configSourceStreamVersion; 53 _configBuilderName = configBuilderName; 54 _protectionProviderName = protectionProviderName; 55 _overrideMode = overrideMode; 56 _skipInChildApps = skipInChildApps; 57 } 58 59 60 // IConfigErrorInfo interface 61 public string Filename { 62 get {return _filename;} 63 } 64 65 public int LineNumber { 66 get {return _lineNumber;} 67 set {_lineNumber = value;} 68 } 69 70 // other access methods 71 internal object StreamVersion { 72 get {return _streamVersion;} 73 set {_streamVersion = value;} 74 } 75 76 internal string ConfigSource { 77 get {return _configSource;} 78 set {_configSource = value;} 79 } 80 81 internal string ConfigSourceStreamName { 82 get {return _configSourceStreamName;} 83 set {_configSourceStreamName = value;} 84 } 85 86 internal object ConfigSourceStreamVersion { 87 #if UNUSED_CODE 88 get {return _configSourceStreamVersion; } 89 #endif 90 91 set {_configSourceStreamVersion = value; } 92 } 93 94 internal string ConfigKey { 95 get {return _configKey;} 96 } 97 98 internal string DefinitionConfigPath { 99 get {return _definitionConfigPath;} 100 } 101 102 internal string TargetConfigPath { 103 get {return _targetConfigPath;} 104 set {_targetConfigPath = value;} 105 } 106 107 internal string SubPath { 108 get {return _subPath;} 109 } 110 111 internal string RawXml { 112 get {return _rawXml;} 113 set {_rawXml = value;} 114 } 115 116 internal string ConfigBuilderName { 117 get { return _configBuilderName; } 118 set { _configBuilderName = value; } 119 } 120 121 internal string ProtectionProviderName { 122 get {return _protectionProviderName;} 123 set {_protectionProviderName = value;} 124 } 125 126 internal OverrideModeSetting OverrideModeSetting { 127 get { return _overrideMode; } 128 set { _overrideMode = value; } 129 } 130 131 internal bool SkipInChildApps { 132 get {return _skipInChildApps;} 133 set {_skipInChildApps = value;} 134 } 135 } 136 } 137