quintodrome/model/artist.go

32 lines
644 B
Go
Raw Normal View History

2020-01-14 18:22:34 -09:00
package model
import "time"
type Artist struct {
ID string
2016-03-27 16:13:00 -08:00
Name string
AlbumCount int
Starred bool
StarredAt time.Time
}
type Artists []Artist
type ArtistIndex struct {
ID string
Artists Artists
}
type ArtistIndexes []ArtistIndex
type ArtistRepository interface {
CountAll() (int64, error)
Exists(id string) (bool, error)
Put(m *Artist) error
Get(id string) (*Artist, error)
GetStarred(...QueryOptions) (Artists, error)
SetStar(star bool, ids ...string) error
Search(q string, offset int, size int) (Artists, error)
2020-01-16 12:53:48 -09:00
Refresh(ids ...string) error
GetIndex() (ArtistIndexes, error)
2020-01-17 19:28:11 -09:00
PurgeEmpty() error
}