using System;
using LeafWeb.Core.Utility;
using Renci.SshNet;

namespace LeafWeb.Core.Remote
{
	public class PiscalClientException : Exception
	{
		public int LeafInputId { get; private set; }
		public string CommandText { get; private set; }

		public PiscalClientException(int leafInputId, string error) : base(error)
		{
			LeafInputId = leafInputId;
		}

		public PiscalClientException(int leafInputId, SshCommand command) : base(
			!string.IsNullOrEmpty(command.Error) 
			? command.Error.TrimEndNewLine()
			: command.Result.TrimEndNewLine()
			)
		{
			LeafInputId = leafInputId;
			CommandText = command.CommandText;
		}
	}
}