forked from shkh/lastfm-go
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathalbum.go
65 lines (58 loc) · 2.04 KB
/
album.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package lastfm_go
type albumApi struct {
params *apiParams
}
// album.addTags
func (api albumApi) AddTags(args map[string]interface{}) (err error) {
defer func() { appendCaller(err, "lastfm.Album.AddTags") }()
err = callPost("album.addtags", api.params, args, nil, P{
"plain": []string{"artist", "album", "tags"},
})
return
}
// album.getInfo
func (api albumApi) GetInfo(args map[string]interface{}) (result AlbumGetInfo, err error) {
defer func() { appendCaller(err, "lastfm.Album.GetInfo") }()
err = callGet("album.getinfo", api.params, args, &result, P{
"plain": []string{"artist", "album", "mbid", "autocorrect", "username", "lang"},
})
return
}
// album.getTags
func (api albumApi) GetTags(args map[string]interface{}) (result AlbumGetTags, err error) {
defer func() { appendCaller(err, "lastfm.Album.GetTags") }()
if _, ok := args["user"]; !ok && api.params.sk != "" {
err = callPost("album.gettags", api.params, args, &result, P{
"plain": []string{"artist", "album", "mbid", "autocorrect"},
})
} else {
err = callGet("album.gettags", api.params, args, &result, P{
"plain": []string{"artist", "album", "mbid", "autocorrect", "user"},
})
}
return
}
// album.getTopTags
func (api albumApi) GetTopTags(args map[string]interface{}) (result AlbumGetTopTags, err error) {
defer func() { appendCaller(err, "lastfm.Album.GetTopTags") }()
err = callGet("album.gettoptags", api.params, args, &result, P{
"plain": []string{"artist", "album", "autocorrect", "mbid"},
})
return
}
// album.removeTag
func (api albumApi) RemoveTag(args map[string]interface{}) (err error) {
defer func() { appendCaller(err, "lastfm.Album.RemoveTag") }()
err = callPost("album.removetag", api.params, args, nil, P{
"plain": []string{"artist", "album", "tag"},
})
return
}
// album.search
func (api albumApi) Search(args map[string]interface{}) (result AlbumSearch, err error) {
defer func() { appendCaller(err, "lastfm.Album.Search") }()
err = callGet("album.search", api.params, args, &result, P{
"plain": []string{"limit", "page", "album"},
})
return
}