github.com/apremalal/vamps-core@v1.0.1-0.20161221121535-d430b56ec174/routes/router.go (about) 1 package routes 2 3 import ( 4 "net/http" 5 6 "github.com/gorilla/mux" 7 "github.com/vedicsoft/vamps-core/controllers" 8 ) 9 10 func NewRouter() *mux.Router { 11 router := mux.NewRouter().StrictSlash(false) 12 13 for _, route := range ApplicationRoutes { 14 var handler http.Handler 15 handler = route.HandlerFunc 16 if route.Secured { 17 if route.CheckAuth { 18 handler = controllers.RequireTokenAuthenticationAndAuthorization(handler) 19 } else { 20 handler = controllers.RequireTokenAuthentication(handler) 21 } 22 } 23 router. 24 Methods(route.Method). 25 Path(route.Pattern). 26 Name(route.Name). 27 Handler(handler) 28 } 29 30 return router 31 }