diff --git a/pkg/worker/watcher.go b/pkg/worker/watcher.go deleted file mode 100644 index 953b0036..00000000 --- a/pkg/worker/watcher.go +++ /dev/null @@ -1,46 +0,0 @@ -package worker - -import ( - "time" - - "github.com/giongto35/cloud-game/v3/pkg/logger" - "github.com/giongto35/cloud-game/v3/pkg/worker/room" -) - -type Watcher struct { - r *room.GameRouter - t *time.Ticker - done chan struct{} - log *logger.Logger -} - -func NewWatcher(p time.Duration, router *room.GameRouter, log *logger.Logger) *Watcher { - return &Watcher{ - r: router, - t: time.NewTicker(p), - done: make(chan struct{}), - log: log, - } -} - -func (w *Watcher) Run() { - go func() { - for { - select { - case <-w.t.C: - if w.r.HasRoom() && w.r.Users().Empty() { - w.r.Close() - w.log.Warn().Msgf("Forced room close!") - } - case <-w.done: - return - } - } - }() -} - -func (w *Watcher) Stop() error { - w.t.Stop() - close(w.done) - return nil -} diff --git a/pkg/worker/worker.go b/pkg/worker/worker.go index 28c29b60..0da257b2 100644 --- a/pkg/worker/worker.go +++ b/pkg/worker/worker.go @@ -3,7 +3,6 @@ package worker import ( "errors" "fmt" - "time" "github.com/giongto35/cloud-game/v3/pkg/config" "github.com/giongto35/cloud-game/v3/pkg/games" @@ -25,7 +24,7 @@ type Worker struct { log *logger.Logger mana *caged.Manager router *room.GameRouter - services [3]interface { + services [2]interface { Run() Stop() error } @@ -77,7 +76,6 @@ func New(conf config.WorkerConfig, log *logger.Logger) (*Worker, error) { log.Warn().Err(err).Msgf("cloud storage fail, using no storage") } worker.storage = st - worker.services[2] = NewWatcher(30*time.Minute, worker.router, log) return worker, nil }