// Kyoo - A portable and vast media library solution. // Copyright (c) Kyoo. // // See AUTHORS.md and LICENSE file in the project root for full license information. // // Kyoo is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // any later version. // // Kyoo is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with Kyoo. If not, see . using System; using System.Linq; using JetBrains.Annotations; namespace Kyoo.Abstractions.Models.Utils { /// /// The list of errors that where made in the request. /// public class RequestError { /// /// The list of errors that where made in the request. /// /// ["InvalidFilter: no field 'startYear' on a collection"] public string[] Errors { get; set; } /// /// Create a new with one error. /// /// The error to specify in the response. public RequestError(string error) { if (error == null) throw new ArgumentNullException(nameof(error)); Errors = new[] { error }; } /// /// Create a new with multiple errors. /// /// The errors to specify in the response. public RequestError(string[] errors) { if (errors == null || !errors.Any()) throw new ArgumentException("Errors must be non null and not empty", nameof(errors)); Errors = errors; } } }