From f6c49bd3ed7b71400f44dc363cd28f77d604a8aa Mon Sep 17 00:00:00 2001 From: "tobias.olofsson" Date: Sun, 4 Feb 2018 22:30:47 +0100 Subject: [PATCH] Adds possibility to set an optional basepath in the Configure method. --- src/SwaggerWcf/SwaggerWcfEndpoint.cs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/SwaggerWcf/SwaggerWcfEndpoint.cs b/src/SwaggerWcf/SwaggerWcfEndpoint.cs index 0f532fa..f8dd7f9 100644 --- a/src/SwaggerWcf/SwaggerWcfEndpoint.cs +++ b/src/SwaggerWcf/SwaggerWcfEndpoint.cs @@ -32,6 +32,8 @@ internal SwaggerWcfEndpoint(Func buildService) internal static SecurityDefinitions SecurityDefinitions { get; private set; } + internal static string BasePath { get; private set; } + private static Dictionary SwaggerFiles { get; } = new Dictionary(); public static bool DisableSwaggerUI { get; set; } @@ -42,10 +44,11 @@ internal SwaggerWcfEndpoint(Func buildService) public static Func, List> FilterHiddenTags { get; set; } = (string path, List hiddenTags) => hiddenTags; - public static void Configure(Info info, SecurityDefinitions securityDefinitions = null) + public static void Configure(Info info, SecurityDefinitions securityDefinitions = null, string basePath = null) { Info = info; SecurityDefinitions = securityDefinitions; + BasePath = basePath; } [MethodImpl(MethodImplOptions.Synchronized)] @@ -60,6 +63,8 @@ internal static void Init(Func buildService) service.Info = Info; if (SecurityDefinitions != null) service.SecurityDefinitions = SecurityDefinitions; + if (BasePath != null) + service.BasePath = BasePath; string swagger = Serializer.Process(service); if (SwaggerFiles.ContainsKey(path) == false) @@ -130,7 +135,9 @@ public Stream StaticContent(string content) ? content.Substring(0, content.IndexOf("?", StringComparison.Ordinal)) : content; - Stream stream = Support.StaticContent.GetFile(filename, out string contentType, out long contentLength); + string contentType; + long contentLength; + Stream stream = Support.StaticContent.GetFile(filename, out contentType, out contentLength); if (stream == Stream.Null) {