SectionInput.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / SectionInput.cs / 1305376 / SectionInput.cs

                            //------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//----------------------------------------------------------------------------- 

using System; 
using System.Collections.Generic; 

namespace System.Configuration { 

    [System.Diagnostics.DebuggerDisplay("SectionInput {_sectionXmlInfo.ConfigKey}")]
    internal class SectionInput {
        // result can be null, so we use this object to indicate whether it has been evaluated 
        private static object                   s_unevaluated = new object();
 
        // input from the XML file 
        private SectionXmlInfo                  _sectionXmlInfo;
 
        // Provider to use for encryption
        private ProtectedConfigurationProvider  _protectionProvider;

        // Has the protection provider been determined for this input? 
        private bool                            _isProtectionProviderDetermined;
 
        // the result of evaluating this section 
        private object                          _result;
 
        // the result of evaluating this section after GetRuntimeObject is called
        private object                          _resultRuntimeObject;

        // accummulated errors related to this input 
        private List    _errors;
 
        internal SectionInput(SectionXmlInfo sectionXmlInfo, List errors) { 
            _sectionXmlInfo = sectionXmlInfo;
            _errors = errors; 

            _result = s_unevaluated;
            _resultRuntimeObject = s_unevaluated;
        } 

        internal SectionXmlInfo SectionXmlInfo { 
            get {return _sectionXmlInfo;} 
        }
 
        internal bool HasResult {
            get {return _result != s_unevaluated;}
        }
 
        internal bool HasResultRuntimeObject {
            get {return _resultRuntimeObject != s_unevaluated;} 
        } 

        internal object Result { 
            get {
                // Useful assert, but it fires in the debugger when using automatic property evaluation
                // Debug.Assert(_result != s_unevaluated, "_result != s_unevaluated");
 
                return _result;
            } 
 
            set {_result = value;}
        } 

        internal object ResultRuntimeObject {
            get {
                // Useful assert, but it fires in the debugger when using automatic property evaluation 
                // Debug.Assert(_resultRuntimeObject != s_unevaluated, "_resultRuntimeObject != s_unevaluated");
 
                return _resultRuntimeObject; 
            }
 
            set {_resultRuntimeObject = value;}
        }

        internal void ClearResult() { 
            _result = s_unevaluated;
            _resultRuntimeObject = s_unevaluated; 
        } 

        internal bool IsProtectionProviderDetermined { 
            get {return _isProtectionProviderDetermined;}
        }

        internal ProtectedConfigurationProvider ProtectionProvider { 
            get {return _protectionProvider;}
            set { 
                _protectionProvider = value; 
                _isProtectionProviderDetermined = true;
            } 
        }

        // Errors associated with a section input.
        internal ICollection Errors { 
            get {
                return _errors; 
            } 
        }
 
        internal bool HasErrors {
            get {
                return ErrorsHelper.GetHasErrors(_errors);
            } 
        }
 
        internal void ThrowOnErrors() { 
            ErrorsHelper.ThrowOnErrors(_errors);
        } 
    }
}

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//----------------------------------------------------------------------------- 

using System; 
using System.Collections.Generic; 

namespace System.Configuration { 

    [System.Diagnostics.DebuggerDisplay("SectionInput {_sectionXmlInfo.ConfigKey}")]
    internal class SectionInput {
        // result can be null, so we use this object to indicate whether it has been evaluated 
        private static object                   s_unevaluated = new object();
 
        // input from the XML file 
        private SectionXmlInfo                  _sectionXmlInfo;
 
        // Provider to use for encryption
        private ProtectedConfigurationProvider  _protectionProvider;

        // Has the protection provider been determined for this input? 
        private bool                            _isProtectionProviderDetermined;
 
        // the result of evaluating this section 
        private object                          _result;
 
        // the result of evaluating this section after GetRuntimeObject is called
        private object                          _resultRuntimeObject;

        // accummulated errors related to this input 
        private List    _errors;
 
        internal SectionInput(SectionXmlInfo sectionXmlInfo, List errors) { 
            _sectionXmlInfo = sectionXmlInfo;
            _errors = errors; 

            _result = s_unevaluated;
            _resultRuntimeObject = s_unevaluated;
        } 

        internal SectionXmlInfo SectionXmlInfo { 
            get {return _sectionXmlInfo;} 
        }
 
        internal bool HasResult {
            get {return _result != s_unevaluated;}
        }
 
        internal bool HasResultRuntimeObject {
            get {return _resultRuntimeObject != s_unevaluated;} 
        } 

        internal object Result { 
            get {
                // Useful assert, but it fires in the debugger when using automatic property evaluation
                // Debug.Assert(_result != s_unevaluated, "_result != s_unevaluated");
 
                return _result;
            } 
 
            set {_result = value;}
        } 

        internal object ResultRuntimeObject {
            get {
                // Useful assert, but it fires in the debugger when using automatic property evaluation 
                // Debug.Assert(_resultRuntimeObject != s_unevaluated, "_resultRuntimeObject != s_unevaluated");
 
                return _resultRuntimeObject; 
            }
 
            set {_resultRuntimeObject = value;}
        }

        internal void ClearResult() { 
            _result = s_unevaluated;
            _resultRuntimeObject = s_unevaluated; 
        } 

        internal bool IsProtectionProviderDetermined { 
            get {return _isProtectionProviderDetermined;}
        }

        internal ProtectedConfigurationProvider ProtectionProvider { 
            get {return _protectionProvider;}
            set { 
                _protectionProvider = value; 
                _isProtectionProviderDetermined = true;
            } 
        }

        // Errors associated with a section input.
        internal ICollection Errors { 
            get {
                return _errors; 
            } 
        }
 
        internal bool HasErrors {
            get {
                return ErrorsHelper.GetHasErrors(_errors);
            } 
        }
 
        internal void ThrowOnErrors() { 
            ErrorsHelper.ThrowOnErrors(_errors);
        } 
    }
}

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.

                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK