Storm IndexRepository complete.

This commit is contained in:
Deluan 2020-01-10 19:35:37 -05:00 committed by Deluan Quintão
parent 9ccd9545e8
commit a1d837cb9b
3 changed files with 60 additions and 1 deletions

View File

@ -4,7 +4,6 @@ import "github.com/google/wire"
var Set = wire.NewSet(
NewCheckSumRepository,
NewArtistIndexRepository,
NewMediaFolderRepository,
NewNowPlayingRepository,
NewPlaylistRepository,

View File

@ -0,0 +1,59 @@
package storm
import (
"github.com/cloudsonic/sonic-server/domain"
)
type _ArtistIndex struct {
Id string
Artists domain.ArtistInfos
}
type artistIndexRepository struct {
stormRepository
}
func NewArtistIndexRepository() domain.ArtistIndexRepository {
r := &artistIndexRepository{}
r.init(&_ArtistIndex{})
return r
}
func (r *artistIndexRepository) Put(i *domain.ArtistIndex) error {
ti := _ArtistIndex(*i)
return Db().Save(&ti)
}
func (r *artistIndexRepository) Get(id string) (*domain.ArtistIndex, error) {
ta := &_ArtistIndex{}
err := r.getByID(id, ta)
if err != nil {
return nil, err
}
a := domain.ArtistIndex(*ta)
return &a, err
}
func (r *artistIndexRepository) GetAll() (domain.ArtistIndexes, error) {
var all []_ArtistIndex
err := r.getAll(&all, &domain.QueryOptions{})
if err != nil {
return nil, err
}
return r.toArtistIndexes(all)
}
func (r *artistIndexRepository) toArtistIndexes(all []_ArtistIndex) (domain.ArtistIndexes, error) {
result := make(domain.ArtistIndexes, len(all))
for i, a := range all {
result[i] = domain.ArtistIndex(a)
}
return result, nil
}
func (r *artistIndexRepository) DeleteAll() error {
return Db().Drop(&_ArtistIndex{})
}
var _ domain.ArtistIndexRepository = (*artistIndexRepository)(nil)
var _ = domain.ArtistIndex(_ArtistIndex{})

View File

@ -7,4 +7,5 @@ var Set = wire.NewSet(
NewArtistRepository,
NewAlbumRepository,
NewMediaFileRepository,
NewArtistIndexRepository,
)