Commit | Line | Data |
---|---|---|
2636df37 JC |
1 | package main |
2 | ||
3 | import ( | |
4 | "git.jacobcasper.com/brackets/client" | |
5 | "git.jacobcasper.com/brackets/db" | |
6 | _ "github.com/mattn/go-sqlite3" | |
7 | "log" | |
8 | ) | |
9 | ||
10 | func main() { | |
11 | ||
12 | db, err := db.New() | |
13 | if err != nil { | |
14 | log.Fatal("Could not open db: ", err.Error()) | |
15 | } | |
16 | ||
17 | client, err := client.Get() | |
18 | if err != nil { | |
19 | log.Fatal("Could not get client: ", err.Error()) | |
20 | } | |
21 | ||
22 | _, page, err := client.FeaturedPlaylists() | |
23 | ||
24 | for _, playlist := range page.Playlists { | |
25 | tracks, err := client.GetPlaylistTracks(playlist.ID) | |
26 | if err != nil { | |
27 | log.Printf("Couldn't retrieve playlist %s.", string(playlist.ID)) | |
28 | } | |
29 | for _, trackPage := range tracks.Tracks { | |
30 | for _, artist := range trackPage.Track.Artists { | |
31 | db.Mu.Lock() | |
32 | db.Db.Exec("INSERT INTO ARTIST (ID, NAME) VALUES (?, ?)", artist.ID, artist.Name) | |
33 | db.Mu.Unlock() | |
34 | } | |
35 | } | |
36 | } | |
37 | } |