Add utils

This commit is contained in:
Ben Sarmiento
2024-01-28 20:20:33 +01:00
parent 3cf3351210
commit 573cfa1436
6 changed files with 65 additions and 21 deletions

View File

@@ -16,14 +16,18 @@ import (
"github.com/debridmediamanager/zurg/pkg/logutil"
"github.com/debridmediamanager/zurg/pkg/realdebrid"
"github.com/go-chi/chi/v5"
"github.com/panjf2000/ants/v2"
)
type Handlers struct {
downloader *universal.Downloader
torMgr *torrent.TorrentManager
cfg config.ConfigInterface
api *realdebrid.RealDebrid
log *logutil.Logger
downloader *universal.Downloader
torMgr *torrent.TorrentManager
cfg config.ConfigInterface
api *realdebrid.RealDebrid
workerPool *ants.Pool
refreshPool *ants.Pool
repairPool *ants.Pool
log *logutil.Logger
}
func init() {
@@ -32,13 +36,16 @@ func init() {
chi.RegisterMethod("MOVE")
}
func AttachHandlers(router *chi.Mux, downloader *universal.Downloader, torMgr *torrent.TorrentManager, cfg config.ConfigInterface, api *realdebrid.RealDebrid, log *logutil.Logger) {
func AttachHandlers(router *chi.Mux, downloader *universal.Downloader, torMgr *torrent.TorrentManager, cfg config.ConfigInterface, api *realdebrid.RealDebrid, workerPool, refreshPool, repairPool *ants.Pool, log *logutil.Logger) {
hs := &Handlers{
downloader: downloader,
torMgr: torMgr,
cfg: cfg,
api: api,
log: log,
downloader: downloader,
torMgr: torMgr,
cfg: cfg,
api: api,
workerPool: workerPool,
refreshPool: refreshPool,
repairPool: repairPool,
log: log,
}
if cfg.GetUsername() != "" {
@@ -47,6 +54,9 @@ func AttachHandlers(router *chi.Mux, downloader *universal.Downloader, torMgr *t
router.Use(hs.options)
router.Get("/", hs.handleHome)
router.Get("/reboot/worker", hs.handleRebootWorkerPool)
router.Get("/reboot/refresh", hs.handleRebootRefreshPool)
router.Get("/reboot/repair", hs.handleRebootRepairPool)
// version
router.Get(fmt.Sprintf("/{mountType}/%s", version.FILE), hs.handleVersionFile)
router.Head(fmt.Sprintf("/{mountType}/%s", version.FILE), hs.handleCheckVersionFile)