diff options
| author | Claus Vium <cvium@users.noreply.github.com> | 2021-04-07 14:36:49 +0200 |
|---|---|---|
| committer | Joshua M. Boniface <joshua@boniface.me> | 2021-04-11 14:13:44 -0400 |
| commit | 95a4fc0f18d93a370347ae5aca05a177a173c32f (patch) | |
| tree | 264617d749b8da4f5d2b3d55e3199cd699be1856 /Jellyfin.Server/Filters/AdditionalModelFilter.cs | |
| parent | 62bf3db88573804332aa8df9b1a0ff08015fc48e (diff) | |
Merge pull request #5688 from crobibero/api-docs-sever-discovery
Add SessionDiscoveryInfo to generated api-docs
(cherry picked from commit f718735b4ef639041ae5f0854341a4e0e471917e)
Signed-off-by: Joshua M. Boniface <joshua@boniface.me>
Diffstat (limited to 'Jellyfin.Server/Filters/AdditionalModelFilter.cs')
| -rw-r--r-- | Jellyfin.Server/Filters/AdditionalModelFilter.cs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Jellyfin.Server/Filters/AdditionalModelFilter.cs b/Jellyfin.Server/Filters/AdditionalModelFilter.cs new file mode 100644 index 000000000..87a59e0b4 --- /dev/null +++ b/Jellyfin.Server/Filters/AdditionalModelFilter.cs @@ -0,0 +1,34 @@ +using MediaBrowser.Common.Plugins; +using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Model.ApiClient; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Session; +using MediaBrowser.Model.SyncPlay; +using Microsoft.OpenApi.Models; +using Swashbuckle.AspNetCore.SwaggerGen; + +namespace Jellyfin.Server.Filters +{ + /// <summary> + /// Add models not directly used by the API, but used for discovery and websockets. + /// </summary> + public class AdditionalModelFilter : IDocumentFilter + { + /// <inheritdoc /> + public void Apply(OpenApiDocument swaggerDoc, DocumentFilterContext context) + { + context.SchemaGenerator.GenerateSchema(typeof(LibraryUpdateInfo), context.SchemaRepository); + context.SchemaGenerator.GenerateSchema(typeof(IPlugin), context.SchemaRepository); + context.SchemaGenerator.GenerateSchema(typeof(PlayRequest), context.SchemaRepository); + context.SchemaGenerator.GenerateSchema(typeof(PlaystateRequest), context.SchemaRepository); + context.SchemaGenerator.GenerateSchema(typeof(TimerEventInfo), context.SchemaRepository); + context.SchemaGenerator.GenerateSchema(typeof(SendCommand), context.SchemaRepository); + context.SchemaGenerator.GenerateSchema(typeof(GeneralCommandType), context.SchemaRepository); + + context.SchemaGenerator.GenerateSchema(typeof(GroupUpdate<object>), context.SchemaRepository); + + context.SchemaGenerator.GenerateSchema(typeof(SessionMessageType), context.SchemaRepository); + context.SchemaGenerator.GenerateSchema(typeof(ServerDiscoveryInfo), context.SchemaRepository); + } + } +} |
