SieveIncompatibleMethodException.cs 1.5 KB
Newer Older
thienvo's avatar
thienvo committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
using System;

namespace Sieve.Exceptions
{
    public class SieveIncompatibleMethodException : SieveException
    {
        public string MethodName { get; protected set; }
        public Type ExpectedType { get; protected set; }
        public Type ActualType { get; protected set; }

        public SieveIncompatibleMethodException(
            string methodName,
            Type expectedType,
            Type actualType,
            string message)
            : base(message)
        {
            MethodName = methodName;
            ExpectedType = expectedType;
            ActualType = actualType;
        }

        public SieveIncompatibleMethodException(
            string methodName,
            Type expectedType,
            Type actualType,
            string message,
            Exception innerException)
            : base(message, innerException)
        {
            MethodName = methodName;
            ExpectedType = expectedType;
            ActualType = actualType;
        }

        public SieveIncompatibleMethodException(string message) : base(message)
        {
        }

        public SieveIncompatibleMethodException(string message, Exception innerException) : base(message, innerException)
        {
        }

        public SieveIncompatibleMethodException()
        {
        }

        protected SieveIncompatibleMethodException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) : base(info, context)
        {
        }
    }
}