private static void ApplyCommonSwaggerConfiguration(SwaggerDocsConfig c, IUnityContainer container, string cacheKey, string[] xmlCommentsFilePaths) { var cacheManager = container.Resolve <ICacheManager <object> >(); c.CustomProvider(defaultProvider => new CachingSwaggerProvider(defaultProvider, cacheManager, cacheKey)); c.MapType <object>(() => new Schema { type = "object" }); c.IgnoreObsoleteProperties(); c.DescribeAllEnumsAsStrings(); c.OperationFilter(() => new OptionalParametersFilter()); c.OperationFilter(() => new FileResponseTypeFilter()); c.OperationFilter(() => new FileUploadOperationFilter()); c.ResolveConflictingActions(apiDescriptions => apiDescriptions.First()); c.RootUrl(message => new Uri(ComputeHostAsSeenByOriginalClient(message), message.GetRequestContext().VirtualPathRoot).ToString()); c.PrettyPrint(); c.ApiKey("apiKey") .Description("API Key Authentication") .Name("api_key") .In("header"); foreach (var path in xmlCommentsFilePaths) { c.IncludeXmlComments(path); } }
public void Apply(SwaggerDocsConfig c) { foreach (var header in headers) { c.ApiKey(header.Key).Name(header.Name).Description(header.Description).In("header"); } c.OperationFilter(() => this); }
public void EnableSwaggerUi_NullApiKeyScheme() { var httpConfig = new HttpConfiguration(); var config = new SwaggerDocsConfig(); config.ApiKey("test", "1", ""); var s = new SwaggerEnabledConfiguration(httpConfig, config, ""); Assert.DoesNotThrow(() => s.EnableSwaggerUi("test", c => { })); }
internal static void Configure(HttpConfiguration config) { var swConfig = new SwaggerDocsConfig(); swConfig.RootUrl(m => GetOwinAppBasePath(m.GetOwinContext())); swConfig.OperationFilter(() => new ODataResponcesOperationFilter()); swConfig.OperationFilter(() => new AddExtendedMetadataOperationFilter()); swConfig.DocumentFilter(() => new ODataRemoveNotAllowedOperationFilter()); swConfig.SingleApiVersion("v2", "BlackCoffeeTalk oData Services"); swConfig.CustomProvider(defaultProvider => new ODataSwaggerProvider(defaultProvider, swConfig, config) .Configure(odatasw => { odatasw.EnableSwaggerRequestCaching(); odatasw.IncludeNavigationProperties(); })); swConfig.ApiKey("Token") .Description("Filling bearer token.") .Name("Authorization") .In("header"); config.Routes.MapHttpRoute("swagger_docs", "", new { apiVersion = "v2" }, null, new SwaggerDocsHandler(swConfig)); }
private static void ApplyCommonSwaggerConfiguration(SwaggerDocsConfig c, IUnityContainer container, string cacheKey, string[] xmlCommentsFilePaths) { var cacheManager = container.Resolve<ICacheManager<object>>(); c.CustomProvider(defaultProvider => new CachingSwaggerProvider(defaultProvider, cacheManager, cacheKey)); c.MapType<object>(() => new Schema { type = "object" }); c.IgnoreObsoleteProperties(); c.DescribeAllEnumsAsStrings(); c.OperationFilter(() => new OptionalParametersFilter()); c.ResolveConflictingActions(apiDescriptions => apiDescriptions.First()); c.RootUrl(message => new Uri(message.RequestUri, message.GetRequestContext().VirtualPathRoot).ToString()); c.PrettyPrint(); c.ApiKey("apiKey") .Description("API Key Authentication") .Name("api_key") .In("header"); foreach (var path in xmlCommentsFilePaths) { c.IncludeXmlComments(path); } }
public void Apply(SwaggerDocsConfig c) { c.ApiKey(Key).Name(Name).Description(Description).In("header"); c.OperationFilter(() => this); }