From 4fb1bf507916087308c91b3b3b10e5647039b82f Mon Sep 17 00:00:00 2001 From: Claudio Ortolina Date: Sat, 25 Apr 2026 21:34:11 +0100 Subject: [PATCH] Remove duplication in implementation --- lib/music_library/artists/batch.ex | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/lib/music_library/artists/batch.ex b/lib/music_library/artists/batch.ex index dc47d9e6..da12576f 100644 --- a/lib/music_library/artists/batch.ex +++ b/lib/music_library/artists/batch.ex @@ -11,29 +11,25 @@ defmodule MusicLibrary.Artists.Batch do @spec refresh_musicbrainz_data() :: {:ok, [String.t()]} def refresh_musicbrainz_data do - Batch.run_on_all(from(r in ArtistInfo), "artist_info", fn artist_info -> - Artists.refresh_musicbrainz_data_async(artist_info) - end) + batch(&Artists.refresh_musicbrainz_data_async/1) end @spec refresh_discogs_data() :: {:ok, [String.t()]} def refresh_discogs_data do - Batch.run_on_all(from(r in ArtistInfo), "artist_info", fn artist_info -> - Artists.refresh_discogs_data_async(artist_info) - end) + batch(&Artists.refresh_discogs_data_async/1) end @spec refresh_wikipedia_data() :: {:ok, [String.t()]} def refresh_wikipedia_data do - Batch.run_on_all(from(r in ArtistInfo), "artist_info", fn artist_info -> - Artists.refresh_wikipedia_data_async(artist_info) - end) + batch(&Artists.refresh_wikipedia_data_async/1) end @spec refresh_lastfm_data() :: {:ok, [String.t()]} def refresh_lastfm_data do - Batch.run_on_all(from(r in ArtistInfo), "artist_info", fn artist_info -> - Artists.refresh_lastfm_data_async(artist_info) - end) + batch(&Artists.refresh_lastfm_data_async/1) + end + + defp batch(callback) do + Batch.run_on_all(from(r in ArtistInfo), "artist_info", callback) end end