diff options
Diffstat (limited to 'MediaBrowser.Api/PackageService.cs')
| -rw-r--r-- | MediaBrowser.Api/PackageService.cs | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/MediaBrowser.Api/PackageService.cs b/MediaBrowser.Api/PackageService.cs index 84b42baa3..136969b17 100644 --- a/MediaBrowser.Api/PackageService.cs +++ b/MediaBrowser.Api/PackageService.cs @@ -16,6 +16,7 @@ namespace MediaBrowser.Api /// Class GetPackage /// </summary> [Route("/Packages/{Name}", "GET", Summary = "Gets a package, by name or assembly guid")] + [Authenticated] public class GetPackage : IReturn<PackageInfo> { /// <summary> @@ -37,6 +38,7 @@ namespace MediaBrowser.Api /// Class GetPackages /// </summary> [Route("/Packages", "GET", Summary = "Gets available packages")] + [Authenticated] public class GetPackages : IReturn<List<PackageInfo>> { /// <summary> @@ -60,6 +62,7 @@ namespace MediaBrowser.Api /// Class GetPackageVersionUpdates /// </summary> [Route("/Packages/Updates", "GET", Summary = "Gets available package updates for currently installed packages")] + [Authenticated(Roles = "Admin")] public class GetPackageVersionUpdates : IReturn<List<PackageVersionInfo>> { /// <summary> @@ -74,6 +77,7 @@ namespace MediaBrowser.Api /// Class InstallPackage /// </summary> [Route("/Packages/Installed/{Name}", "POST", Summary = "Installs a package")] + [Authenticated(Roles = "Admin")] public class InstallPackage : IReturnVoid { /// <summary> @@ -109,6 +113,7 @@ namespace MediaBrowser.Api /// Class CancelPackageInstallation /// </summary> [Route("/Packages/Installing/{Id}", "DELETE", Summary = "Cancels a package installation")] + [Authenticated(Roles = "Admin")] public class CancelPackageInstallation : IReturnVoid { /// <summary> @@ -122,7 +127,6 @@ namespace MediaBrowser.Api /// <summary> /// Class PackageService /// </summary> - [Authenticated] public class PackageService : BaseApiService { private readonly IInstallationManager _installationManager; @@ -139,7 +143,6 @@ namespace MediaBrowser.Api /// </summary> /// <param name="request">The request.</param> /// <returns>System.Object.</returns> - /// <exception cref="System.ArgumentException">Unsupported PackageType</exception> public object Get(GetPackageVersionUpdates request) { var result = new List<PackageVersionInfo>(); @@ -170,9 +173,10 @@ namespace MediaBrowser.Api public object Get(GetPackage request) { var packages = _installationManager.GetAvailablePackages(CancellationToken.None, applicationVersion: _appHost.ApplicationVersion).Result; + var list = packages.ToList(); - var result = packages.FirstOrDefault(p => string.Equals(p.guid, request.AssemblyGuid ?? "none", StringComparison.OrdinalIgnoreCase)) - ?? packages.FirstOrDefault(p => p.name.Equals(request.Name, StringComparison.OrdinalIgnoreCase)); + var result = list.FirstOrDefault(p => string.Equals(p.guid, request.AssemblyGuid ?? "none", StringComparison.OrdinalIgnoreCase)) + ?? list.FirstOrDefault(p => p.name.Equals(request.Name, StringComparison.OrdinalIgnoreCase)); return ToOptimizedResult(result); } |
