admissionServer/routes.go

44 lines
1.2 KiB
Go

package main
import (
"net/http"
"github.com/gorilla/mux"
)
type route struct {
Name string
Adres string
HandlerFunction http.HandlerFunc
}
type routes []route
var registredRoutes = routes{
route{"Index", "/", index},
route{"GetAll", "/getfromdb/{tableName}", getAll},
route{"GetOne", "/getfromdb/{primaryKey}", getIndex},
route{"UpdateRecord",
"/updaterec/{tableName}/pk/{primaryKey}/pkn/{primaryKeyName}/ftu/{fieldToUpdate}/vti/{valueToInsert}",
update},
route{"InsertRecord", "/insertrec/{tableName}/nr/{count}/pk/{primaryKey}/{val1}/{val2}/{val3}/{val4}/{val5}/{val6}/{val7}",
insert},
route{"DeleteRecord", "/deleterec/{tableName}/pk/{primaryKey}/pkn/{primaryKeyName}", delete},
route{"GetColumnNames", "/getcolumnnames/{tableName}", columnNames},
route{"GetColumnTypes", "/getcolumntypes/{tableName}", columnTypes},
route{"Sort", "/sort/{tableName}/sortby/{sortBy}/sorttype/{type}", sort},
route{"Search", "/search/{tableName}/where/{columnName}/is/{searchedValue}/sortby/{sortBy}/sorttype/{type}", search},
}
func newRouter() *mux.Router {
router := mux.NewRouter().StrictSlash(true)
for _, r := range registredRoutes {
router.
Path(r.Adres).
Name(r.Name).
Handler(r.HandlerFunction)
}
return router
}