diff options
author | Wim <wim@42.be> | 2019-01-31 17:06:36 +0100 |
---|---|---|
committer | Wim <wim@42.be> | 2019-01-31 17:06:36 +0100 |
commit | c81c0dd22a7779148c4890cfd4bbf490054f06f1 (patch) | |
tree | 06ce6fcdc8f3a2278a2f3050ba42088dd2e64485 /vendor/github.com/labstack/echo/middleware/slash.go | |
parent | f8a1ab4622a5b833282e9ee42f382451d17c1a06 (diff) | |
download | matterbridge-msglm-c81c0dd22a7779148c4890cfd4bbf490054f06f1.tar.gz matterbridge-msglm-c81c0dd22a7779148c4890cfd4bbf490054f06f1.tar.bz2 matterbridge-msglm-c81c0dd22a7779148c4890cfd4bbf490054f06f1.zip |
Update vendor, move to labstack/echo/v4 Fixes #698
Diffstat (limited to 'vendor/github.com/labstack/echo/middleware/slash.go')
-rw-r--r-- | vendor/github.com/labstack/echo/middleware/slash.go | 119 |
1 files changed, 0 insertions, 119 deletions
diff --git a/vendor/github.com/labstack/echo/middleware/slash.go b/vendor/github.com/labstack/echo/middleware/slash.go deleted file mode 100644 index 9af56caf..00000000 --- a/vendor/github.com/labstack/echo/middleware/slash.go +++ /dev/null @@ -1,119 +0,0 @@ -package middleware - -import ( - "github.com/labstack/echo" -) - -type ( - // TrailingSlashConfig defines the config for TrailingSlash middleware. - TrailingSlashConfig struct { - // Skipper defines a function to skip middleware. - Skipper Skipper - - // Status code to be used when redirecting the request. - // Optional, but when provided the request is redirected using this code. - RedirectCode int `yaml:"redirect_code"` - } -) - -var ( - // DefaultTrailingSlashConfig is the default TrailingSlash middleware config. - DefaultTrailingSlashConfig = TrailingSlashConfig{ - Skipper: DefaultSkipper, - } -) - -// AddTrailingSlash returns a root level (before router) middleware which adds a -// trailing slash to the request `URL#Path`. -// -// Usage `Echo#Pre(AddTrailingSlash())` -func AddTrailingSlash() echo.MiddlewareFunc { - return AddTrailingSlashWithConfig(DefaultTrailingSlashConfig) -} - -// AddTrailingSlashWithConfig returns a AddTrailingSlash middleware with config. -// See `AddTrailingSlash()`. -func AddTrailingSlashWithConfig(config TrailingSlashConfig) echo.MiddlewareFunc { - // Defaults - if config.Skipper == nil { - config.Skipper = DefaultTrailingSlashConfig.Skipper - } - - return func(next echo.HandlerFunc) echo.HandlerFunc { - return func(c echo.Context) error { - if config.Skipper(c) { - return next(c) - } - - req := c.Request() - url := req.URL - path := url.Path - qs := c.QueryString() - if path != "/" && path[len(path)-1] != '/' { - path += "/" - uri := path - if qs != "" { - uri += "?" + qs - } - - // Redirect - if config.RedirectCode != 0 { - return c.Redirect(config.RedirectCode, uri) - } - - // Forward - req.RequestURI = uri - url.Path = path - } - return next(c) - } - } -} - -// RemoveTrailingSlash returns a root level (before router) middleware which removes -// a trailing slash from the request URI. -// -// Usage `Echo#Pre(RemoveTrailingSlash())` -func RemoveTrailingSlash() echo.MiddlewareFunc { - return RemoveTrailingSlashWithConfig(TrailingSlashConfig{}) -} - -// RemoveTrailingSlashWithConfig returns a RemoveTrailingSlash middleware with config. -// See `RemoveTrailingSlash()`. -func RemoveTrailingSlashWithConfig(config TrailingSlashConfig) echo.MiddlewareFunc { - // Defaults - if config.Skipper == nil { - config.Skipper = DefaultTrailingSlashConfig.Skipper - } - - return func(next echo.HandlerFunc) echo.HandlerFunc { - return func(c echo.Context) error { - if config.Skipper(c) { - return next(c) - } - - req := c.Request() - url := req.URL - path := url.Path - qs := c.QueryString() - l := len(path) - 1 - if l >= 0 && path != "/" && path[l] == '/' { - path = path[:l] - uri := path - if qs != "" { - uri += "?" + qs - } - - // Redirect - if config.RedirectCode != 0 { - return c.Redirect(config.RedirectCode, uri) - } - - // Forward - req.RequestURI = uri - url.Path = path - } - return next(c) - } - } -} |