add api/user MustRoute method
This commit is contained in:
33
api/user/handle.go
Normal file
33
api/user/handle.go
Normal file
@@ -0,0 +1,33 @@
|
||||
package api_user
|
||||
|
||||
import (
|
||||
"git.oblat.lv/alex/triggerssmith/internal/config"
|
||||
"git.oblat.lv/alex/triggerssmith/internal/user"
|
||||
"github.com/go-chi/chi/v5"
|
||||
)
|
||||
|
||||
type userHandler struct {
|
||||
cfg *config.Config
|
||||
a *user.Service
|
||||
}
|
||||
|
||||
func MustRoute(config *config.Config, userService *user.Service) func(chi.Router) {
|
||||
if config == nil {
|
||||
panic("config is nil")
|
||||
}
|
||||
if userService == nil {
|
||||
panic("userService is nil")
|
||||
}
|
||||
h := &userHandler{
|
||||
cfg: config,
|
||||
a: userService,
|
||||
}
|
||||
|
||||
return func(r chi.Router) {
|
||||
r.Get("/", h.getUsers) // /users
|
||||
r.Get("/{userId}", h.GetUser) // /users/{userId}
|
||||
r.Post("/", h.CreateUser) // /users
|
||||
r.Patch("/{userId}", h.updateUser) // /users/{userId}
|
||||
r.Delete("/{userId}", h.deleteUser) // /users/{userId}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user