#region Copyright & License // // Copyright 2001-2005 The Apache Software Foundation // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // #endregion using System; using log4net.Core; namespace log4net.Util { /// /// A SecurityContext used when a SecurityContext is not required /// /// /// /// The is a no-op implementation of the /// base class. It is used where a /// is required but one has not been provided. /// /// /// Nicko Cadell public sealed class NullSecurityContext : SecurityContext { /// /// Singleton instance of /// /// /// /// Singleton instance of /// /// public static readonly NullSecurityContext Instance = new NullSecurityContext(); /// /// Private constructor /// /// /// /// Private constructor for singleton pattern. /// /// private NullSecurityContext() { } /// /// Impersonate this SecurityContext /// /// State supplied by the caller /// null /// /// /// No impersonation is done and null is always returned. /// /// public override IDisposable Impersonate(object state) { return null; } } }