﻿// Copyright 2015-2025 Finsa S.p.A. <finsa@finsa.it>
//
// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
// in compliance with the License. You may obtain a copy of the License at:
//
// "http://www.apache.org/licenses/LICENSE-2.0"
//
// Unless required by applicable law or agreed to in writing, software distributed under the License
// is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
// or implied. See the License for the specific language governing permissions and limitations under
// the License.

using System;
using System.Runtime.Serialization;

namespace Finsa.Caravan.WebApi
{
    /// <summary>
    ///   Tutti i possibili codici di errore emessi da Caravan.
    /// </summary>
    [Serializable, DataContract(Name = nameof(CaravanErrorCodes))]
    public enum CaravanErrorCodes
    {
        /// <summary>
        ///   Accesso non autorizzato ai servizi web di Caravan.
        /// </summary>
        [EnumMember]
        CVE00000,

        /// <summary>
        ///   Accesso non formalmente corretto ai servizi web di Caravan.
        /// </summary>
        [EnumMember]
        CVE00001,

        /// <summary>
        ///   Errore durante il recupero o la manipolazione del file di CHANGELOG.
        /// </summary>
        [EnumMember]
        CVE99998,

        /// <summary>
        ///   Errore interno al servizio non correttamente gestito.
        /// </summary>
        [EnumMember]
        CVE99999,
    }
}