+//Creating subrouters:
+ //healthRouter check on the health of nodes or main server
+ healthRouter := chi.NewRouter()
+ //controllerRouter Agnostic openVswitch controller bridge
+ controllerRouter := chi.NewRouter()
+ //managementRouter Start, stop, monitoring of the core (mininet)
+ managementRouter := chi.NewRouter()
+ //mininetApiRouter Interface with the virtual environment inside the core (mininet)
+ mininetApiRouter := chi.NewRouter()
+ //might want to check https://go-chi.io/#/pages/routing?id=routing-groups
+ //in order to make groups where you have other middleware like authentication
+
+//////////////////////////////////possible routing/////////////////////////////
+ //r.Connect(pattern string, h http.HandlerFunc)
+ //r.Delete(pattern string, h http.HandlerFunc)
+ //r.Get(pattern string, h http.HandlerFunc)
+ //r.Head(pattern string, h http.HandlerFunc)
+ //r.Options(pattern string, h http.HandlerFunc)
+ //r.Patch(pattern string, h http.HandlerFunc)
+ //r.Post(pattern string, h http.HandlerFunc)
+ //r.Put(pattern string, h http.HandlerFunc)
+ //r.Trace(pattern string, h http.HandlerFunc)
+///////////////////////////////////////////////////////////////////////////////
+
+ //r.Get("/", )
+ //r.Get("/access", )
+ //r.Get("/stats", )
+ //r.Get("/topology", )
+ //r.Get("/health", )
+ //r.Get("/free", )//probably do this with server side or sockets
+ //r.Get("/flowdel", )//this is an external request
+ //r.Get("/mpstat", )
+ //r.Get("/ifstat", )
+ //r.Get("/showtemp", )
+ //r.Get("/gettopo", )
+ //r.Get("/net", )
+ //r.Get("/rpiping", )//workerping
+ //r.Get("/nodes", )
+ //r.Get("/statusnodes", )
+ //r.Get("/intfs", )
+ //r.Get("/iperf", )
+ //r.Get("/pingall", )
+ //r.Get("/placement", )
+ //r.Get("/getvsorcdata", )
+ //r.Get("/getcontrollerdata", )
+ //r.Get("/resetflows", )
+ //r.Get("/listswitch", )
+ //r.Get("/status", )
+ //r.Get("/tablestatus", )
+ //r.Get("/portsdesc", )
+ //r.Get("/portsstat", )
+ //r.Get("/startcontroller", )
+ //r.Get("/startcontrollerrouter", )
+ //r.Get("/stopcontroller", )
+ //r.Get("/sendcommand", )
+ //r.Get("/cancel", )
+ //r.Get("/startvsorc", )
+ //r.Get("/stopvsorc", )
+ //http.Handle("/", r)
+
+//Mounting all of the subrouters:
+ r.Mount("/health", healthRouter)
+ r.Mount("/controller", controllerRouter)
+ r.Mount("/management", managementRouter)
+ r.Mount("/virtualAPI", mininetApiRouter)
+
+//staring up the server
+ http.ListenAndServe(":8000", r)