jellyfin/MediaBrowser.Model/Updates/PackageInfo.cs
2021-06-06 18:11:51 +02:00

84 lines
2.6 KiB
C#

using System;
using System.Collections.Generic;
using System.Text.Json.Serialization;
namespace MediaBrowser.Model.Updates
{
/// <summary>
/// Class PackageInfo.
/// </summary>
public class PackageInfo
{
/// <summary>
/// Initializes a new instance of the <see cref="PackageInfo"/> class.
/// </summary>
public PackageInfo()
{
Versions = Array.Empty<VersionInfo>();
Category = string.Empty;
Name = string.Empty;
Overview = string.Empty;
Owner = string.Empty;
Description = string.Empty;
}
/// <summary>
/// Gets or sets the name.
/// </summary>
/// <value>The name.</value>
[JsonPropertyName("name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets a long description of the plugin containing features or helpful explanations.
/// </summary>
/// <value>The description.</value>
[JsonPropertyName("description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets a short overview of what the plugin does.
/// </summary>
/// <value>The overview.</value>
[JsonPropertyName("overview")]
public string Overview { get; set; }
/// <summary>
/// Gets or sets the owner.
/// </summary>
/// <value>The owner.</value>
[JsonPropertyName("owner")]
public string Owner { get; set; }
/// <summary>
/// Gets or sets the category.
/// </summary>
/// <value>The category.</value>
[JsonPropertyName("category")]
public string Category { get; set; }
/// <summary>
/// Gets or sets the guid of the assembly associated with this plugin.
/// This is used to identify the proper item for automatic updates.
/// </summary>
/// <value>The name.</value>
[JsonPropertyName("guid")]
public Guid Id { get; set; }
/// <summary>
/// Gets or sets the versions.
/// </summary>
/// <value>The versions.</value>
[JsonPropertyName("versions")]
#pragma warning disable CA2227 // Collection properties should be read only
public IList<VersionInfo> Versions { get; set; }
#pragma warning restore CA2227 // Collection properties should be read only
/// <summary>
/// Gets or sets the image url for the package.
/// </summary>
[JsonPropertyName("imageUrl")]
public string? ImageUrl { get; set; }
}
}