namespace ApiTerceiroSimulador.Models
{
    /// <summary>
    /// Classe utilizada para retornar sucesso ou fracasso na execução.
    /// </summary>
    public class RequestResult
    {
        /// <summary>
        /// Código de status da execução. Retorno "0" indica execução com sucesso.
        /// </summary>
        public int StatusCode { get; set; } = 0;
        
        /// <summary>
        /// Mensagem com a justificativa do problema para ser exibida para o usuário ou armazenar no log
        /// </summary>
        public string? ReasonPhrase { get; set; }

        public RequestResult()
        {
            StatusCode = 0;
            ReasonPhrase = null;
        }

        public RequestResult(int statusCode, string? reasonPhrase)
        {
            StatusCode = statusCode;
            ReasonPhrase = reasonPhrase;
        }
    }
}
