// 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; namespace Kyoo.Abstractions.Models.Attributes { /// /// Change the way the field is serialized. It allow one to use a string format like formatting instead of the default value. /// This can be disabled for a request by setting the "internal" query string parameter to true. /// [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field)] public class SerializeAsAttribute : Attribute { /// /// The format string to use. /// public string Format { get; } /// /// Create a new with the selected format. /// /// /// The format string can contains any property within {}. It will be replaced by the actual value of the property. /// You can also use the special value {HOST} that will put the webhost address. /// /// /// The show's poster serialized uses this format string: {HOST}/api/shows/{Slug}/poster /// /// The format to use public SerializeAsAttribute(string format) { Format = format; } } }