package main import ( "fmt" "os/exec" "strings" "git.milar.in/milarin/channel" "git.milar.in/nyaanime/logic" "github.com/fsnotify/fsnotify" ) func main() { // check for ffprobe in PATH if _, err := exec.LookPath("ffprobe"); err != nil { panic(err) // TODO error handling } // get access token once at startup to be sure that an access token is obtainable at all if _, err := logic.GetAnilistAccessToken(); err != nil { panic(err) // TODO error handling } fsChan, err := WatchDirectory(fsnotify.Create, DownloadPath) if err != nil { panic(err) // TODO error handling } outputChan := channel.Map(fsChan, HandleFile) channel.Each(outputChan, PrintStringBuilder) } func PrintStringBuilder(b *strings.Builder) { fmt.Println(b.String()) }