From cdb9f44735ba7893ac9338680bd16a885924f332 Mon Sep 17 00:00:00 2001 From: Deluan Date: Sat, 1 Aug 2026 21:04:26 -0400 Subject: [PATCH] refactor(model): name the artwork mime lookup for what it is keyed by GetAllMimes reads as a collection of mime types; it returns a hash -> mime index over every stored artwork. GetMimeByHash names the key, matching the convention the other map-returning repository methods already follow (CountBySuffix, CountByClient). --- core/artwork/prune.go | 2 +- core/artwork/prune_test.go | 2 +- model/artwork.go | 4 ++-- persistence/artwork_repository.go | 2 +- persistence/artwork_repository_test.go | 2 +- tests/mock_artwork_repo.go | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/core/artwork/prune.go b/core/artwork/prune.go index 1fd6197bc..6c78c8c17 100644 --- a/core/artwork/prune.go +++ b/core/artwork/prune.go @@ -44,7 +44,7 @@ func prune(ctx context.Context, ds model.DataStore, store *ImageStore) error { } // Read after the delete, so the sweep below reclaims the files of the rows just removed. - mimes, err := repo.GetAllMimes() + mimes, err := repo.GetMimeByHash() if err != nil { return err } diff --git a/core/artwork/prune_test.go b/core/artwork/prune_test.go index 0879b8949..5643bb45b 100644 --- a/core/artwork/prune_test.go +++ b/core/artwork/prune_test.go @@ -18,7 +18,7 @@ type flakyGetArtworkRepo struct { *tests.MockArtworkRepo } -func (f *flakyGetArtworkRepo) GetAllMimes() (map[string]string, error) { +func (f *flakyGetArtworkRepo) GetMimeByHash() (map[string]string, error) { return nil, errors.New("db locked") } diff --git a/model/artwork.go b/model/artwork.go index 8c11bf487..f4cae956f 100644 --- a/model/artwork.go +++ b/model/artwork.go @@ -106,8 +106,8 @@ type ArtworkRepository interface { DeleteForItems(kind Kind, ids []string) error // GetInfoForItems hydrates a page in one batched query. GetInfoForItems(kind Kind, ids []string) (map[string]ItemArtworkInfo, error) - // GetAllMimes returns hash -> current mime for every stored artwork. - GetAllMimes() (map[string]string, error) + // GetMimeByHash returns hash -> current mime for every stored artwork. + GetMimeByHash() (map[string]string, error) // PurgeDanglingItemArtwork removes state rows whose entity no longer exists. PurgeDanglingItemArtwork() (int64, error) } diff --git a/persistence/artwork_repository.go b/persistence/artwork_repository.go index dae76c303..de97e604e 100644 --- a/persistence/artwork_repository.go +++ b/persistence/artwork_repository.go @@ -56,7 +56,7 @@ func (r *artworkRepository) PutImage(a *model.Artwork) error { return err } -func (r *artworkRepository) GetAllMimes() (map[string]string, error) { +func (r *artworkRepository) GetMimeByHash() (map[string]string, error) { sel := Select("hash", "mime").From(r.tableName) var rows []struct { Hash string diff --git a/persistence/artwork_repository_test.go b/persistence/artwork_repository_test.go index 559276755..145dcf980 100644 --- a/persistence/artwork_repository_test.go +++ b/persistence/artwork_repository_test.go @@ -89,7 +89,7 @@ var _ = Describe("ArtworkRepository", func() { It("returns every stored hash with its current mime", func() { Expect(repo.PutImage(&model.Artwork{Hash: "all1", Mime: "image/jpeg"})).To(Succeed()) Expect(repo.PutImage(&model.Artwork{Hash: "all2", Mime: "image/png"})).To(Succeed()) - mimes, err := repo.GetAllMimes() + mimes, err := repo.GetMimeByHash() Expect(err).ToNot(HaveOccurred()) Expect(mimes).To(HaveKeyWithValue("all1", "image/jpeg")) Expect(mimes).To(HaveKeyWithValue("all2", "image/png")) diff --git a/tests/mock_artwork_repo.go b/tests/mock_artwork_repo.go index 606c107ed..4c04553de 100644 --- a/tests/mock_artwork_repo.go +++ b/tests/mock_artwork_repo.go @@ -50,7 +50,7 @@ func (m *MockArtworkRepo) PutImage(a *model.Artwork) error { return nil } -func (m *MockArtworkRepo) GetAllMimes() (map[string]string, error) { +func (m *MockArtworkRepo) GetMimeByHash() (map[string]string, error) { m.mu.Lock() defer m.mu.Unlock() if m.Err != nil {