package app

import "github.com/veggiedefender/torrent-client/internal/torrent"

type Controller struct {
	engine *torrent.Engine
}

func NewController() *Controller {
	engine := torrent.NewEngine()

	return &Controller{
		engine: engine,
	}
}

func (c *Controller) StartTorrent(path string) error {
	return c.engine.LoadTorrent(path)
}

func (c *Controller) StopTorrent() {
	c.engine.Stop()
}

func (c *Controller) Progress() float64 {
	return c.engine.Progress()
}

func (c *Controller) Status() torrent.Status {
	return c.engine.Status()
}
