private Dictionary SetupOpenApiHttpBindings()

in src/Microsoft.Azure.WebJobs.Extensions.OpenApi/OpenApiTriggerFunctionProvider.cs [50:99]


        private Dictionary<string, HttpBindingMetadata> SetupOpenApiHttpBindings()
        {
            var bindings = new Dictionary<string, HttpBindingMetadata>();

            if (this._settings.HideDocument)
            {
                return bindings;
            }

            var renderSwaggerDocument = new HttpBindingMetadata()
            {
                Methods = new List<string>() { HttpMethods.Get },
                Route = "swagger.{extension}",
                AuthLevel = this._settings.AuthLevel?.Document ?? AuthorizationLevel.Anonymous,
            };

            bindings.Add(RenderSwaggerDocumentKey, renderSwaggerDocument);

            var renderOpenApiDocument = new HttpBindingMetadata()
            {
                Methods = new List<string>() { HttpMethods.Get },
                Route = "openapi/{version}.{extension}",
                AuthLevel = this._settings.AuthLevel?.Document ?? AuthorizationLevel.Anonymous,
            };

            bindings.Add(RenderOpenApiDocumentKey, renderOpenApiDocument);

            if (!this._settings.HideSwaggerUI)
            {
                var renderOAuth2Redirect = new HttpBindingMetadata()
                {
                    Methods = new List<string>() { HttpMethods.Get },
                    Route = "oauth2-redirect.html",
                    AuthLevel = this._settings.AuthLevel?.UI ?? AuthorizationLevel.Anonymous,
                };

                bindings.Add(RenderOAuth2RedirectKey, renderOAuth2Redirect);

                var renderSwaggerUI = new HttpBindingMetadata()
                {
                    Methods = new List<string>() { HttpMethods.Get },
                    Route = "swagger/ui",
                    AuthLevel = this._settings.AuthLevel?.UI ?? AuthorizationLevel.Anonymous,
                };

                bindings.Add(RenderSwaggerUIKey, renderSwaggerUI);
            }

            return bindings;
        }