Skip to content

Commit

Permalink
Change shouldPreserveSegements to work with CsRoute
Browse files Browse the repository at this point in the history
This allows the function be used with either CsRoute or the existing
Route type.
  • Loading branch information
theseanything committed Oct 28, 2024
1 parent 2e101c4 commit 34e0e3d
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions lib/router.go
Original file line number Diff line number Diff line change
Expand Up @@ -353,7 +353,7 @@ func loadRoutes(c *mgo.Collection, mux *triemux.Mux, backends map[string]http.Ha
logDebug(fmt.Sprintf("router: registered %s (prefix: %v) for %s",
incomingURL.Path, prefix, route.BackendID))
case "redirect":
handler := handlers.NewRedirectHandler(incomingURL.Path, route.RedirectTo, shouldPreserveSegments(route))
handler := handlers.NewRedirectHandler(incomingURL.Path, route.RedirectTo, shouldPreserveSegments(route.RouteType, route.SegmentsMode))
mux.Handle(incomingURL.Path, prefix, handler)
logDebug(fmt.Sprintf("router: registered %s (prefix: %v) -> %s",
incomingURL.Path, prefix, route.RedirectTo))
Expand Down Expand Up @@ -386,12 +386,12 @@ func (be *Backend) ParseURL() (*url.URL, error) {
return url.Parse(backendURL)
}

func shouldPreserveSegments(route *Route) bool {
switch route.RouteType {
func shouldPreserveSegments(routeType, segmentsMode string) bool {
switch routeType {
case RouteTypeExact:
return route.SegmentsMode == SegmentsModePreserve
return segmentsMode == SegmentsModePreserve
case RouteTypePrefix:
return route.SegmentsMode != SegmentsModeIgnore
return segmentsMode != SegmentsModeIgnore
default:
return false
}
Expand Down

0 comments on commit 34e0e3d

Please sign in to comment.