// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
namespace WixToolset.Dtf.Compression
{
using System;
using System.IO;
using System.Runtime.Serialization;
///
/// Base exception class for compression operations. Compression libraries should
/// derive subclass exceptions with more specific error information relevent to the
/// file format.
///
[Serializable]
public class ArchiveException : IOException
{
///
/// Creates a new ArchiveException with a specified error message and a reference to the
/// inner exception that is the cause of this exception.
///
/// The message that describes the error.
/// The exception that is the cause of the current exception. If the
/// innerException parameter is not a null reference (Nothing in Visual Basic), the current exception
/// is raised in a catch block that handles the inner exception.
public ArchiveException(string message, Exception innerException)
: base(message, innerException)
{
}
///
/// Creates a new ArchiveException with a specified error message.
///
/// The message that describes the error.
public ArchiveException(string message)
: this(message, null)
{
}
///
/// Creates a new ArchiveException.
///
public ArchiveException()
: this(null, null)
{
}
///
/// Initializes a new instance of the ArchiveException class with serialized data.
///
/// The SerializationInfo that holds the serialized object data about the exception being thrown.
/// The StreamingContext that contains contextual information about the source or destination.
protected ArchiveException(SerializationInfo info, StreamingContext context)
: base(info, context)
{
}
}
}