From 0e20910061e71e592d899e99b9d646bb25b7757f Mon Sep 17 00:00:00 2001 From: Deluan Date: Sat, 26 Mar 2016 22:29:26 -0400 Subject: [PATCH] Cleaning old data from artists indexes --- domain/index.go | 1 + persistence/index_repository.go | 9 +++++++++ scanner/importer.go | 1 + 3 files changed, 11 insertions(+) diff --git a/domain/index.go b/domain/index.go index ce2a7359d..21e525f91 100644 --- a/domain/index.go +++ b/domain/index.go @@ -27,4 +27,5 @@ type ArtistIndexRepository interface { Put(m *ArtistIndex) error Get(id string) (*ArtistIndex, error) GetAll() (ArtistIndexes, error) + DeleteAll() error } diff --git a/persistence/index_repository.go b/persistence/index_repository.go index c21477553..0e030537f 100644 --- a/persistence/index_repository.go +++ b/persistence/index_repository.go @@ -37,4 +37,13 @@ func (r *artistIndexRepository) GetAll() (domain.ArtistIndexes, error) { return indices, err } +func (r *artistIndexRepository) DeleteAll() error { + var empty domain.ArtistIndexes + _, err := r.purgeInactive(empty, func(e interface{}) string { + return e.(domain.ArtistIndex).Id + }) + + return err +} + var _ domain.ArtistIndexRepository = (*artistIndexRepository)(nil) diff --git a/scanner/importer.go b/scanner/importer.go index 2b5504868..8287b2c95 100644 --- a/scanner/importer.go +++ b/scanner/importer.go @@ -317,6 +317,7 @@ func (i *Importer) findGroup(ig utils.IndexGroups, name string) string { } func (i *Importer) saveIndex(artistIndex map[string]tempIndex) error { + i.idxRepo.DeleteAll() for k, temp := range artistIndex { idx := &domain.ArtistIndex{Id: k} for _, v := range temp {