#nullable enable using System; namespace MediaBrowser.Model.Plugins { /// /// This is a serializable stub class that is used by the api to provide information about installed plugins. /// public class PluginInfo { /// /// Initializes a new instance of the class. /// /// The plugin name. /// The plugin . /// The plugin description. /// The . /// True if this plugin can be uninstalled. public PluginInfo(string name, Version version, string description, Guid id, bool canUninstall) { Name = name; Version = version?.ToString() ?? throw new ArgumentNullException(nameof(version)); Description = description; Id = id.ToString(); CanUninstall = canUninstall; } /// /// Gets or sets the name. /// public string Name { get; set; } /// /// Gets or sets the version. /// public string Version { get; set; } /// /// Gets or sets the name of the configuration file. /// public string? ConfigurationFileName { get; set; } /// /// Gets or sets the description. /// public string Description { get; set; } /// /// Gets or sets the unique id. /// public string Id { get; set; } /// /// Gets or sets a value indicating whether the plugin can be uninstalled. /// public bool CanUninstall { get; set; } /// /// Gets or sets a value indicating whether this plugin has a valid image. /// public bool HasImage { get; set; } /// /// Gets or sets a value indicating the status of the plugin. /// public PluginStatus Status { get; set; } } }