Replaced TryGetPlugin with GetPlugin
This commit is contained in:
parent
0337e39bae
commit
5323887540
|
@ -212,12 +212,13 @@ namespace Emby.Server.Implementations
|
|||
/// <summary>
|
||||
/// Attempts to find the plugin with and id of <paramref name="id"/>.
|
||||
/// </summary>
|
||||
/// <param name="id">Id of plugin.</param>
|
||||
/// <param name="version">The version of the plugin to locate.</param>
|
||||
/// <param name="plugin">A <see cref="LocalPlugin"/> if found, otherwise null.</param>
|
||||
/// <returns>Boolean value signifying the success of the search.</returns>
|
||||
public bool TryGetPlugin(Guid id, Version? version, out LocalPlugin? plugin)
|
||||
/// <param name="id">The <see cref="Guid"/> of plugin.</param>
|
||||
/// <param name="version">Optional <see cref="Version"/> of the plugin to locate.</param>
|
||||
/// <returns>A <see cref="LocalPlugin"/> if located, or null if not.</returns>
|
||||
public LocalPlugin? GetPlugin(Guid id, Version? version = null)
|
||||
{
|
||||
LocalPlugin? plugin;
|
||||
|
||||
if (version == null)
|
||||
{
|
||||
// If no version is given, return the current instance.
|
||||
|
@ -235,7 +236,7 @@ namespace Emby.Server.Implementations
|
|||
plugin = _plugins.FirstOrDefault(p => p.Id.Equals(id) && p.Version.Equals(version));
|
||||
}
|
||||
|
||||
return plugin != null;
|
||||
return plugin;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -197,10 +197,11 @@ namespace Emby.Server.Implementations.Updates
|
|||
{
|
||||
var version = package.Versions[i];
|
||||
|
||||
var plugin = _pluginManager.GetPlugin(packageGuid, version.VersionNumber);
|
||||
// Update the manifests, if anything changes.
|
||||
if (_pluginManager.TryGetPlugin(packageGuid, version.VersionNumber, out LocalPlugin? plugin))
|
||||
if (plugin != null)
|
||||
{
|
||||
bool noChange = string.Equals(plugin!.Manifest.MaxAbi, version.MaxAbi, StringComparison.Ordinal)
|
||||
bool noChange = string.Equals(plugin.Manifest.MaxAbi, version.MaxAbi, StringComparison.Ordinal)
|
||||
|| string.Equals(plugin.Manifest.TargetAbi, version.TargetAbi, StringComparison.Ordinal);
|
||||
if (!noChange)
|
||||
{
|
||||
|
|
|
@ -134,12 +134,13 @@ namespace Jellyfin.Api.Controllers
|
|||
[ProducesResponseType(StatusCodes.Status404NotFound)]
|
||||
public ActionResult EnablePlugin([FromRoute, Required] Guid pluginId, [FromRoute, Required] Version version)
|
||||
{
|
||||
if (!_pluginManager.TryGetPlugin(pluginId, version, out var plugin))
|
||||
var plugin = _pluginManager.GetPlugin(pluginId, version);
|
||||
if (plugin == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
|
||||
_pluginManager.EnablePlugin(plugin!);
|
||||
_pluginManager.EnablePlugin(plugin);
|
||||
return NoContent();
|
||||
}
|
||||
|
||||
|
@ -157,12 +158,13 @@ namespace Jellyfin.Api.Controllers
|
|||
[ProducesResponseType(StatusCodes.Status404NotFound)]
|
||||
public ActionResult DisablePlugin([FromRoute, Required] Guid pluginId, [FromRoute, Required] Version version)
|
||||
{
|
||||
if (!_pluginManager.TryGetPlugin(pluginId, version, out var plugin))
|
||||
var plugin = _pluginManager.GetPlugin(pluginId, version);
|
||||
if (plugin == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
|
||||
_pluginManager.DisablePlugin(plugin!);
|
||||
_pluginManager.DisablePlugin(plugin);
|
||||
return NoContent();
|
||||
}
|
||||
|
||||
|
@ -180,7 +182,8 @@ namespace Jellyfin.Api.Controllers
|
|||
[ProducesResponseType(StatusCodes.Status404NotFound)]
|
||||
public ActionResult UninstallPluginByVersion([FromRoute, Required] Guid pluginId, [FromRoute, Required] Version version)
|
||||
{
|
||||
if (!_pluginManager.TryGetPlugin(pluginId, version, out var plugin))
|
||||
var plugin = _pluginManager.GetPlugin(pluginId, version);
|
||||
if (plugin == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
|
@ -230,8 +233,8 @@ namespace Jellyfin.Api.Controllers
|
|||
[ProducesResponseType(StatusCodes.Status404NotFound)]
|
||||
public ActionResult<BasePluginConfiguration> GetPluginConfiguration([FromRoute, Required] Guid pluginId)
|
||||
{
|
||||
if (_pluginManager.TryGetPlugin(pluginId, null, out var plugin)
|
||||
&& plugin!.Instance is IHasPluginConfiguration configPlugin)
|
||||
var plugin = _pluginManager.GetPlugin(pluginId);
|
||||
if (plugin?.Instance is IHasPluginConfiguration configPlugin)
|
||||
{
|
||||
return configPlugin.Configuration;
|
||||
}
|
||||
|
@ -258,8 +261,8 @@ namespace Jellyfin.Api.Controllers
|
|||
[ProducesResponseType(StatusCodes.Status404NotFound)]
|
||||
public async Task<ActionResult> UpdatePluginConfiguration([FromRoute, Required] Guid pluginId)
|
||||
{
|
||||
if (!_pluginManager.TryGetPlugin(pluginId, null, out var plugin)
|
||||
|| plugin?.Instance is not IHasPluginConfiguration configPlugin)
|
||||
var plugin = _pluginManager.GetPlugin(pluginId);
|
||||
if (plugin?.Instance is not IHasPluginConfiguration configPlugin)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
|
@ -289,14 +292,15 @@ namespace Jellyfin.Api.Controllers
|
|||
[AllowAnonymous]
|
||||
public ActionResult GetPluginImage([FromRoute, Required] Guid pluginId, [FromRoute, Required] Version version)
|
||||
{
|
||||
if (!_pluginManager.TryGetPlugin(pluginId, version, out var plugin))
|
||||
var plugin = _pluginManager.GetPlugin(pluginId, version);
|
||||
if (plugin == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
|
||||
var imgPath = Path.Combine(plugin!.Path, plugin!.Manifest.ImageUrl ?? string.Empty);
|
||||
var imgPath = Path.Combine(plugin.Path, plugin.Manifest.ImageUrl ?? string.Empty);
|
||||
if (((ServerConfiguration)_config.CommonConfiguration).DisablePluginImages
|
||||
|| plugin!.Manifest.ImageUrl == null
|
||||
|| plugin.Manifest.ImageUrl == null
|
||||
|| !System.IO.File.Exists(imgPath))
|
||||
{
|
||||
// Use a blank image.
|
||||
|
@ -325,9 +329,11 @@ namespace Jellyfin.Api.Controllers
|
|||
[ProducesResponseType(StatusCodes.Status404NotFound)]
|
||||
public ActionResult<PluginManifest> GetPluginManifest([FromRoute, Required] Guid pluginId)
|
||||
{
|
||||
if (_pluginManager.TryGetPlugin(pluginId, null, out var plugin))
|
||||
var plugin = _pluginManager.GetPlugin(pluginId);
|
||||
|
||||
if (plugin != null)
|
||||
{
|
||||
return Ok(plugin!.Manifest);
|
||||
return Ok(plugin.Manifest);
|
||||
}
|
||||
|
||||
return NotFound();
|
||||
|
|
|
@ -72,9 +72,8 @@ namespace MediaBrowser.Common.Plugins
|
|||
/// </summary>
|
||||
/// <param name="id">Id of plugin.</param>
|
||||
/// <param name="version">The version of the plugin to locate.</param>
|
||||
/// <param name="plugin">A <see cref="LocalPlugin"/> if found, otherwise null.</param>
|
||||
/// <returns>Boolean value signifying the success of the search.</returns>
|
||||
bool TryGetPlugin(Guid id, Version? version, out LocalPlugin? plugin);
|
||||
/// <returns>A <see cref="LocalPlugin"/> if located, or null if not.</returns>
|
||||
LocalPlugin? GetPlugin(Guid id, Version? version = null);
|
||||
|
||||
/// <summary>
|
||||
/// Removes the plugin.
|
||||
|
|
Loading…
Reference in New Issue
Block a user