#region Apache Notice
/*****************************************************************************
* $Header: $
* $Revision$
* $Date$
*
* iBATIS.NET Data Mapper
* Copyright (C) 2004 - Gilles Bayon
*
*
* 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 System.Runtime.Serialization;
namespace IBatisNet.Common.Exceptions
{
///
/// The DalException is thrown when an error in the Dal occurs.
///
///
/// This is the base exception for all exceptions thrown in the framework.
///
[Serializable]
public class IBatisNetException : System.ApplicationException
{
///
/// Initializes a new instance of the class.
///
///
/// This constructor initializes the Message property of the new instance
/// to a system-supplied message that describes the error.
///
public IBatisNetException() : base("iBatis.NET framework caused an exception.") { }
///
/// Initializes a new instance of the
/// class with a reference to the inner exception that is the cause of this exception.
///
///
/// This constructor initializes the Message property of the new instance
/// using the message parameter.
///
///
/// 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 IBatisNetException(Exception ex) : base("iBatis.NET framework caused an exception.", ex) { }
///
/// Initializes a new instance of the
/// class with a specified error message.
///
///
/// This constructor initializes the Message property of the new instance to
/// the Message property of the passed in exception.
///
/// The message that describes the error.
public IBatisNetException( string message ) : base ( message ) { }
///
/// Initializes a new instance of the
/// class with a specified error message and a reference to the inner exception
/// that is the cause of this exception.
///
///
/// An exception that is thrown as a direct result of a previous exception should include a reference to the previous
/// exception in the InnerException property.
/// The InnerException property returns the same value that is passed into the constructor, or a null reference
/// (Nothing in Visual Basic) if the InnerException property does not supply the inner exception value to the constructor.
///
/// The message that describes the error.
/// The exception that caused the error
public IBatisNetException( string message, Exception inner ) : base ( message, inner ) { }
///
/// Initializes a new instance of the
/// class with serialized data.
///
///
/// This constructor is called during deserialization to reconstitute the
/// exception object transmitted over a stream.
///
///
/// The that holds the serialized
/// object data about the exception being thrown.
///
///
/// The that contains contextual
/// information about the source or destination.
///
protected IBatisNetException(SerializationInfo info, StreamingContext context) : base (info, context) {}
}
}