diff --git a/swagger.go b/swagger.go index df41455..d6b68fd 100644 --- a/swagger.go +++ b/swagger.go @@ -26,8 +26,13 @@ func URL(url string) func(c *Config) { // WrapHandler wraps swaggerFiles.Handler and returns echo.HandlerFunc var WrapHandler = EchoWrapHandler() -// EchoWrapHandler wraps `http.Handler` into `echo.HandlerFunc`. +// EchoWrapHandler is the same as EchoWrapHandlerName, but uses the default swag ID. func EchoWrapHandler(confs ...func(c *Config)) echo.HandlerFunc { + return EchoWrapHandlerName(swag.Name, confs...) +} + +// EchoWrapHandlerName wraps `http.Handler` into `echo.HandlerFunc` with a specific swag ID. +func EchoWrapHandlerName(swagID string, confs ...func(c *Config)) echo.HandlerFunc { handler := swaggerFiles.Handler @@ -35,10 +40,6 @@ func EchoWrapHandler(confs ...func(c *Config)) echo.HandlerFunc { URL: "doc.json", } - for _, c := range confs { - c(config) - } - // create a template with name t := template.New("swagger_index.html") index, _ := t.Parse(indexTempl) @@ -64,7 +65,7 @@ func EchoWrapHandler(confs ...func(c *Config)) echo.HandlerFunc { index.Execute(c.Response().Writer, config) case "doc.json": - doc, _ := swag.ReadDoc() + doc, _ := swag.ReadDocName(swagID) c.Response().Write([]byte(doc)) default: handler.ServeHTTP(c.Response().Writer, c.Request())