package watchers import ( "git.sharkk.net/Sky/Moonshark/core/logger" "git.sharkk.net/Sky/Moonshark/core/routers" ) // WatchLuaRouter sets up a watcher for a LuaRouter's routes directory func WatchLuaRouter(router *routers.LuaRouter, routesDir string, log *logger.Logger) (*Watcher, error) { config := WatcherConfig{ Dir: routesDir, Callback: router.Refresh, Log: log, Recursive: true, Adaptive: true, } watcher, err := WatchDirectory(config) if err != nil { return nil, err } log.Info("Started watching Lua routes directory with adaptive polling: %s", routesDir) return watcher, nil } // WatchStaticRouter sets up a watcher for a StaticRouter's root directory func WatchStaticRouter(router *routers.StaticRouter, staticDir string, log *logger.Logger) (*Watcher, error) { config := WatcherConfig{ Dir: staticDir, Callback: router.Refresh, Log: log, Recursive: true, Adaptive: true, } watcher, err := WatchDirectory(config) if err != nil { return nil, err } log.Info("Started watching static files directory with adaptive polling: %s", staticDir) return watcher, nil }