diff options
| author | Bond-009 <bond.009@outlook.com> | 2020-05-03 19:36:42 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-03 19:36:42 +0200 |
| commit | f2bace2a07a1ac222cb3512e1204a0bdaca9cd37 (patch) | |
| tree | 494243c09545c75a24a9deeafc6c72889ba8bbf4 /Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs | |
| parent | b1a2fb60f25a90f6870d65bc7b8ea8dc58e1f40d (diff) | |
| parent | 806ae1bc07e715c6109a3e8ec96c6d3dd6a802ef (diff) | |
Merge pull request #2925 from crobibero/redoc
Enhance Swagger Generation
Diffstat (limited to 'Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs')
| -rw-r--r-- | Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs b/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs index 00688074f..a354f45aa 100644 --- a/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs +++ b/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs @@ -1,3 +1,8 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text.Json.Serialization; using Jellyfin.Api; using Jellyfin.Api.Auth; using Jellyfin.Api.Auth.FirstTimeSetupOrElevatedPolicy; @@ -91,7 +96,22 @@ namespace Jellyfin.Server.Extensions { return serviceCollection.AddSwaggerGen(c => { - c.SwaggerDoc("v1", new OpenApiInfo { Title = "Jellyfin API", Version = "v1" }); + c.SwaggerDoc("api-docs", new OpenApiInfo { Title = "Jellyfin API" }); + + // Add all xml doc files to swagger generator. + var xmlFiles = Directory.GetFiles( + AppContext.BaseDirectory, + "*.xml", + SearchOption.TopDirectoryOnly); + + foreach (var xmlFile in xmlFiles) + { + c.IncludeXmlComments(xmlFile); + } + + // Order actions by route path, then by http method. + c.OrderActionsBy(description => + $"{description.ActionDescriptor.RouteValues["controller"]}_{description.HttpMethod}"); }); } } |
