Files
bookhoard/internal/router/queue.go
john-okeefe f13c2d683a fix: add missing queue management routes
Add all queue routes from original main.go:
- /queue/devices/:device_id/stats
- /queue/devices/:device_id/items
- /queue/items/:item_id/retry
- /queue/items/:item_id (DELETE)
- /queue/devices/:device_id/clear
- /queue/items (admin-only GET)
2026-02-06 13:15:25 -05:00

27 lines
868 B
Go

package router
import (
"bookhoard/internal/handlers"
)
func registerQueueRoutes(cfg *Config) {
e := cfg.Echo
// JWT middleware for protected routes
jwtMiddleware := createJWTMiddleware(cfg)
protected := e.Group("/api", jwtMiddleware)
// Sync queue management routes (protected - require user auth)
queue := protected.Group("/queue")
queue.GET("/devices/:device_id/stats", cfg.QueueHandler.GetDeviceQueueStats)
queue.GET("/devices/:device_id/items", cfg.QueueHandler.ListDeviceQueueItems)
queue.POST("/items/:item_id/retry", cfg.QueueHandler.RetryQueueItem)
queue.DELETE("/items/:item_id", cfg.QueueHandler.DeleteQueueItem)
queue.DELETE("/devices/:device_id/clear", cfg.QueueHandler.ClearDeviceQueue)
// Admin-only queue routes
adminQueue := queue.Group("", handlers.AdminMiddleware)
adminQueue.GET("/items", cfg.QueueHandler.ListAllQueueItems)
}