// ***********************************************************************
// 
//     AgileWebs
// 
// ***********************************************************************
using System.ComponentModel;
using System.Text.Json.Serialization;
namespace Core.Blueprint.Logging
{
    /// 
    /// The service HTTP error data transfer object.
    /// 
    public class HttpError
    {
        /// 
        /// Gets or sets the error.
        /// 
        [DisplayName(DisplayNames.Error)]
        [JsonPropertyName(DisplayNames.Error)]
        public ErrorDetails Error { get; set; }
        /// 
        /// Creates a new instance of 
        /// with custom parameters.
        /// 
        /// The HTTP error message.
        /// The HTTP error code.
        /// The HTTP error target.
        public HttpError(
            string? message,
            string? errorCode,
            string? target)
        {
            Error = new ErrorDetails
            {
                ErrorCode = errorCode,
                Message = message,
                Target = target,
            };
        }
    }
}