package routes import ( "golangtemplate/servers/app/models" "golangtemplate/servers/app/modules/immudbcrudoperations" "golangtemplate/servers/app/modules/mongodbcrudoperations" "golangtemplate/servers/app/modules/mssqlservercrudoperations" mysqlcrudoperation "golangtemplate/servers/app/modules/mysqlcrudoperations" "golangtemplate/servers/middleware" "net/http" "corelab.mkcl.org/MKCLOS/coredevelopmentplatform/corepkgv2/routebuildermdl" "github.com/gin-gonic/gin" ) // Init - route func Init(g *gin.Engine) { o := g.Group("/o") r := g.Group("/r") r.Use(middleware.Auth()) c := r.Group("/c") c.Use(middleware.RolebasedAuth()) // use in case of mongo DB r.POST("/readData", mongodbcrudoperations.ReadData) r.POST("/insertData", mongodbcrudoperations.InsertData) r.POST("/updateData", mongodbcrudoperations.UpdateData) c.POST("/deleteData", mongodbcrudoperations.DeleteData) //use is case of mssql server o.POST("/readSqlServerData", mssqlservercrudoperations.ReadDataFromMSSQLServer) o.POST("/writeDataToSqlServer", mssqlservercrudoperations.WriteDataToMSSQLServer) o.POST("/updateSqlServerData", mssqlservercrudoperations.UpdateMSSQLServerData) o.POST("/deleteSqlServerData", mssqlservercrudoperations.DeleteDataFromMSSQLServer) // use in case of mysql DB o.POST("/readDataFromMySql", mysqlcrudoperation.ReadDataFromMySql) o.POST("/writeDataToMySql", mysqlcrudoperation.WriteDataToMySql) o.POST("/updateMySqlData", mysqlcrudoperation.UpdateMySqlData) o.POST("/deleteDataFromMySql", mysqlcrudoperation.DeleteDataFromMySql) //use in case of immudb o.POST("/getKeyData", immudbcrudoperations.GetKeyData) o.POST("/setKeyData", immudbcrudoperations.SetKeyData) o.POST("/setVerifiedKeys", immudbcrudoperations.SetVerifiedKeys) o.POST("/getAllKeysData", immudbcrudoperations.GetAllKeysData) o.POST("/getKeyHistory", immudbcrudoperations.GetKeyHistory) o.POST("/setExpirableKey", immudbcrudoperations.SetExpirableKey) o.POST("/getVerifiedKeyData", immudbcrudoperations.GetVerifiedKeyData) o.POST("/deleteKey", immudbcrudoperations.DeleteKey) o.POST("/createDatabase", immudbcrudoperations.CreateDatabase) o.POST("/createUser", immudbcrudoperations.CreateUser) o.POST("/listUsers", immudbcrudoperations.ListUsers) o.POST("/deleteDatabase", immudbcrudoperations.DeleteDatabase) o.POST("/listDatabases", immudbcrudoperations.ListDatabases) o.POST("/getActiveKeys", immudbcrudoperations.GetActiveKeys) //Use in case of generating token for login. o.POST("/Login", models.GenerateTokenForLogin) g.GET("/checkServerStatus", func(c *gin.Context) { c.String(http.StatusOK, "Server is running - OK") }) routebuildermdl.Init(o, r, c, models.JWTKey) }