blob: c377251f0714bda2e95600e5dbc6b1b1d39fa98e [file] [log] [blame]
// LUCENENET specific - commented this because we already have an ObjectDisposedException in .NET.
// This is just reinventing the wheel. However ObjectDisposedException subclasses InvalidOperationException,
// while AlreadyClosedException, subclasses IOException, so we patch this behavior in ExceptionExtensions.
// There is a duplicate type in the Lucene namespace that acts as a static factory to create ObjectDisposedException,
// which is intended to make porting efforts easier.
//using System;
//#if FEATURE_SERIALIZABLE_EXCEPTIONS
//using System.ComponentModel;
//using System.Runtime.Serialization;
//#endif
//namespace Lucene.Net.Store
//{
// /*
// * Licensed to the Apache Software Foundation (ASF) under one or more
// * contributor license agreements. See the NOTICE file distributed with
// * this work for additional information regarding copyright ownership.
// * The ASF licenses this file to You 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.
// */
// /// <summary>
// /// this exception is thrown when there is an attempt to
// /// access something that has already been closed.
// /// </summary>
// // LUCENENET: It is no longer good practice to use binary serialization.
// // See: https://github.com/dotnet/corefx/issues/23584#issuecomment-325724568
//#if FEATURE_SERIALIZABLE_EXCEPTIONS
// [Serializable]
//#endif
// [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1032:Implement standard exception constructors", Justification = "ObjectDisposedExcption already violates this rule by not having a default constructor.")]
// internal class AlreadyClosedException : ObjectDisposedException // LUCENENET specific: marked internal, as we only want users to catch ObjectDisposedException
// {
// public AlreadyClosedException(string message)
// : base(message)
// {
// }
// public AlreadyClosedException(string message, Exception innerException) : base(message, innerException) // LUCENENET: CA1032: Implement standard exception constructors
// {
// }
//#if FEATURE_SERIALIZABLE_EXCEPTIONS
// /// <summary>
// /// Initializes a new instance of this class with serialized data.
// /// </summary>
// /// <param name="info">The <see cref="SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
// /// <param name="context">The <see cref="StreamingContext"/> that contains contextual information about the source or destination.</param>
// [Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.")]
// [EditorBrowsable(EditorBrowsableState.Never)]
// protected AlreadyClosedException(SerializationInfo info, StreamingContext context)
// : base(info, context)
// {
// }
//#endif
// }
//}