-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtrack.go
45 lines (35 loc) · 898 Bytes
/
track.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
package irdata
import (
"context"
"fmt"
)
func (d *irdata) Track() DataTrack {
return &irdataTrack{parent: d}
}
type irdataTrack struct {
parent *irdata
}
type DataTrack interface {
Get(ctx context.Context) ([]Track, error)
Assets(ctx context.Context) (map[string]TrackAssets, error)
}
func (c *irdataTrack) Get(ctx context.Context) ([]Track, error) {
d := c.parent
resp, err := d.get(ctx, fmt.Sprintf("%s/data/track/get", d.membersUrl))
var output []Track
err = handleLink(ctx, d, resp, err, &output)
if err != nil {
return nil, err
}
return output, nil
}
func (c *irdataTrack) Assets(ctx context.Context) (map[string]TrackAssets, error) {
d := c.parent
resp, err := d.get(ctx, fmt.Sprintf("%s/data/track/assets", d.membersUrl))
var output map[string]TrackAssets
err = handleLink(ctx, d, resp, err, &output)
if err != nil {
return nil, err
}
return output, nil
}