using System;

namespace XplorePlane.Services
{
    public class PipelineExecutionException : Exception
    {
        public int FailedNodeOrder { get; }
        public string FailedOperatorKey { get; }

        public PipelineExecutionException(string message, int failedNodeOrder, string failedOperatorKey)
            : base(message)
        {
            FailedNodeOrder = failedNodeOrder;
            FailedOperatorKey = failedOperatorKey;
        }

        public PipelineExecutionException(string message, int failedNodeOrder, string failedOperatorKey, Exception innerException)
            : base(message, innerException)
        {
            FailedNodeOrder = failedNodeOrder;
            FailedOperatorKey = failedOperatorKey;
        }
    }
}
