Team Ai
Datasetpublic

MegaBites-AI/Windows-powershell

sourceHugging Facemitupdated 6mo agoView on Hugging Face
0likes372downloads
MshSecurityException.cs112 linesDownload Raw Back to engine
1// Copyright (c) Microsoft Corporation.2// Licensed under the MIT License.3 4using System.Runtime.Serialization;5 6namespace System.Management.Automation7{8    /// <summary>9    /// This is a wrapper for exception class SecurityException.10    /// </summary>11    public class PSSecurityException : RuntimeException12    {13        #region ctor14        /// <summary>15        /// Recommended constructor for class PSSecurityException.16        /// </summary>17        /// <returns>Constructed object.</returns>18        public PSSecurityException()19            : base()20        {21            _errorRecord = new ErrorRecord(22                new ParentContainsErrorRecordException(this),23                "UnauthorizedAccess",24                ErrorCategory.SecurityError,25                null);26            _errorRecord.ErrorDetails = new ErrorDetails(SessionStateStrings.CanNotRun);27            _message = _errorRecord.ErrorDetails.Message;28        }29 30        /// <summary>31        /// Serialization constructor for class PSSecurityException.32        /// </summary>33        /// <param name="info">Serialization information.</param>34        /// <param name="context">Streaming context.</param>35        /// <returns>Constructed object.</returns>36        [Obsolete("Legacy serialization support is deprecated since .NET 8", DiagnosticId = "SYSLIB0051")]37        protected PSSecurityException(SerializationInfo info,38                           StreamingContext context)39        {40            throw new NotSupportedException();41        }42 43        /// <summary>44        /// Constructor for class PSSecurityException.45        /// </summary>46        /// <param name="message"></param>47        /// <returns>Constructed object.</returns>48        public PSSecurityException(string message)49            : base(message)50        {51            _message = message;52            _errorRecord = new ErrorRecord(53                new ParentContainsErrorRecordException(this),54                "UnauthorizedAccess",55                ErrorCategory.SecurityError,56                null);57            _errorRecord.ErrorDetails = new ErrorDetails(message);58        }59 60        /// <summary>61        /// Constructor for class PSSecurityException.62        /// </summary>63        /// <param name="message"></param>64        /// <param name="innerException"></param>65        /// <returns>Constructed object.</returns>66        public PSSecurityException(string message,67                                Exception innerException)68            : base(message, innerException)69        {70            _errorRecord = new ErrorRecord(71                new ParentContainsErrorRecordException(this),72                "UnauthorizedAccess",73                ErrorCategory.SecurityError,74                null);75            _errorRecord.ErrorDetails = new ErrorDetails(message);76            _message = _errorRecord.ErrorDetails.Message;77        }78        #endregion ctor79 80        /// <summary>81        /// Gets the ErrorRecord information for this exception.82        /// </summary>83        public override ErrorRecord ErrorRecord84        {85            get86            {87                _errorRecord ??= new ErrorRecord(88                    new ParentContainsErrorRecordException(this),89                    "UnauthorizedAccess",90                    ErrorCategory.SecurityError,91                    null);92 93                return _errorRecord;94            }95        }96 97        private ErrorRecord _errorRecord;98 99        /// <summary>100        /// Exception.Message is get-only, but you can effectively101        /// set it in a subclass by overriding this virtual property.102        /// </summary>103        /// <value></value>104        public override string Message105        {106            get { return _message; }107        }108 109        private readonly string _message;110    }111}112