♻️ Song struct to hold song logic
This commit is contained in:
parent
c845d08293
commit
16933ce0fa
4 changed files with 50 additions and 7 deletions
33
mpd/song.go
Normal file
33
mpd/song.go
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
package mpd
|
||||
|
||||
import "github.com/fhs/gompd/v2/mpd"
|
||||
|
||||
type Song struct {
|
||||
Path string
|
||||
Attrs mpd.Attrs
|
||||
stickers []mpd.Sticker
|
||||
}
|
||||
|
||||
func newSong(attrs mpd.Attrs) *Song {
|
||||
return &Song{
|
||||
Path: attrs["file"],
|
||||
Attrs: attrs,
|
||||
}
|
||||
}
|
||||
|
||||
func (s *Song) GetStickers() ([]mpd.Sticker, error) {
|
||||
if s.stickers != nil {
|
||||
return s.stickers, nil
|
||||
}
|
||||
|
||||
if connerror != nil {
|
||||
return nil, connerror
|
||||
}
|
||||
|
||||
sticks, err := StickersGetFor(s.Path)
|
||||
s.stickers = sticks
|
||||
|
||||
return s.stickers, err
|
||||
}
|
||||
|
||||
// github.com/akrennmair/slice
|
||||
Loading…
Add table
Add a link
Reference in a new issue