aboutsummaryrefslogtreecommitdiff
path: root/Jellyfin.Api/BaseJellyfinApiController.cs
diff options
context:
space:
mode:
authorCody Robibero <cody@robibe.ro>2022-09-11 17:47:01 -0600
committerGitHub <noreply@github.com>2022-09-11 17:47:01 -0600
commitd2e18547b16fa30684d7c9ceb8a117d5d9bcef56 (patch)
treef488c8148f28059f0f39b0f98ba5ad4a4548f98a /Jellyfin.Api/BaseJellyfinApiController.cs
parent01b6f7fea4bffd0e9e8cdb0828a4b9ba36136560 (diff)
Require properly typed ActionResult<T> (#8382)
Diffstat (limited to 'Jellyfin.Api/BaseJellyfinApiController.cs')
-rw-r--r--Jellyfin.Api/BaseJellyfinApiController.cs37
1 files changed, 37 insertions, 0 deletions
diff --git a/Jellyfin.Api/BaseJellyfinApiController.cs b/Jellyfin.Api/BaseJellyfinApiController.cs
index 59d6b7513..0c63d24b7 100644
--- a/Jellyfin.Api/BaseJellyfinApiController.cs
+++ b/Jellyfin.Api/BaseJellyfinApiController.cs
@@ -1,4 +1,6 @@
+using System.Collections.Generic;
using System.Net.Mime;
+using Jellyfin.Api.Results;
using Jellyfin.Extensions.Json;
using Microsoft.AspNetCore.Mvc;
@@ -15,5 +17,40 @@ namespace Jellyfin.Api
JsonDefaults.PascalCaseMediaType)]
public class BaseJellyfinApiController : ControllerBase
{
+ /// <summary>
+ /// Create a new <see cref="OkResult{T}"/>.
+ /// </summary>
+ /// <param name="value">The value to return.</param>
+ /// <typeparam name="T">The type to return.</typeparam>
+ /// <returns>The <see cref="ActionResult{T}"/>.</returns>
+ protected ActionResult<IEnumerable<T>> Ok<T>(List<T> value)
+ => new OkResult<IEnumerable<T>>(value);
+
+ /// <summary>
+ /// Create a new <see cref="OkResult{T}"/>.
+ /// </summary>
+ /// <param name="value">The value to return.</param>
+ /// <typeparam name="T">The type to return.</typeparam>
+ /// <returns>The <see cref="ActionResult{T}"/>.</returns>
+ protected ActionResult<IEnumerable<T>> Ok<T>(IReadOnlyList<T> value)
+ => new OkResult<IEnumerable<T>>(value);
+
+ /// <summary>
+ /// Create a new <see cref="OkResult{T}"/>.
+ /// </summary>
+ /// <param name="value">The value to return.</param>
+ /// <typeparam name="T">The type to return.</typeparam>
+ /// <returns>The <see cref="ActionResult{T}"/>.</returns>
+ protected ActionResult<IEnumerable<T>> Ok<T>(IEnumerable<T>? value)
+ => new OkResult<IEnumerable<T>?>(value);
+
+ /// <summary>
+ /// Create a new <see cref="OkResult{T}"/>.
+ /// </summary>
+ /// <param name="value">The value to return.</param>
+ /// <typeparam name="T">The type to return.</typeparam>
+ /// <returns>The <see cref="ActionResult{T}"/>.</returns>
+ protected ActionResult<T> Ok<T>(T value)
+ => new OkResult<T>(value);
}
}