Remove unused functionality and make functions private
This commit is contained in:
@@ -32,35 +32,6 @@ defmodule MusicLibrary.Records.Batch do
|
||||
end
|
||||
end
|
||||
|
||||
def update_release_ids do
|
||||
run_on_all_records(&update_release_ids/1)
|
||||
end
|
||||
|
||||
def update_included_release_group_ids do
|
||||
run_on_all_records(&update_included_release_group_ids/1)
|
||||
end
|
||||
|
||||
def update_release_ids(record) do
|
||||
record
|
||||
|> Record.update_release_ids()
|
||||
|> Repo.update()
|
||||
end
|
||||
|
||||
def update_included_release_group_ids(record) do
|
||||
record
|
||||
|> Record.update_included_release_group_ids()
|
||||
|> Repo.update()
|
||||
end
|
||||
|
||||
def remove_artists_ids! do
|
||||
# Shotgun approach: remove the first 4 artists IDs from each record.
|
||||
# This is not a general solution, but it works as a quick fix because the record with the most artists has 3.
|
||||
q =
|
||||
"update records set artists = json_remove(artists, '$[0].id', '$[1].id', '$[2].id', '$[3].id');"
|
||||
|
||||
Repo.query(q)
|
||||
end
|
||||
|
||||
defp run_on_all_records(fun) do
|
||||
q = from(r in Record)
|
||||
stream = Repo.stream(q, max_rows: 50)
|
||||
|
||||
@@ -72,12 +72,6 @@ defmodule MusicLibrary.Records.Record do
|
||||
Enum.count(record.release_ids)
|
||||
end
|
||||
|
||||
def add_artists(record, artists_attrs) do
|
||||
record
|
||||
|> change()
|
||||
|> put_embed(:artists, artists_attrs)
|
||||
end
|
||||
|
||||
def add_genres(record, genres) do
|
||||
change(record, genres: genres)
|
||||
end
|
||||
@@ -95,13 +89,7 @@ defmodule MusicLibrary.Records.Record do
|
||||
|> update_included_release_group_ids()
|
||||
end
|
||||
|
||||
def update_release_ids(record = %__MODULE__{musicbrainz_data: musicbrainz_data}) do
|
||||
release_ids = Enum.map(musicbrainz_data["releases"], fn r -> r["id"] end)
|
||||
|
||||
change(record, release_ids: release_ids)
|
||||
end
|
||||
|
||||
def update_release_ids(changeset) do
|
||||
defp update_release_ids(changeset) do
|
||||
case get_change(changeset, :musicbrainz_data) do
|
||||
nil ->
|
||||
changeset
|
||||
@@ -112,13 +100,7 @@ defmodule MusicLibrary.Records.Record do
|
||||
end
|
||||
end
|
||||
|
||||
def update_included_release_group_ids(record = %__MODULE__{musicbrainz_data: musicbrainz_data}) do
|
||||
change(record,
|
||||
included_release_group_ids: extract_included_release_group_ids(musicbrainz_data)
|
||||
)
|
||||
end
|
||||
|
||||
def update_included_release_group_ids(changeset) do
|
||||
defp update_included_release_group_ids(changeset) do
|
||||
case get_change(changeset, :musicbrainz_data) do
|
||||
nil ->
|
||||
changeset
|
||||
|
||||
@@ -43,8 +43,8 @@ defmodule MusicLibrary.Records.RecordTest do
|
||||
release_group = release_group(:lockdown_trilogy)
|
||||
|
||||
record =
|
||||
%Record{musicbrainz_data: release_group}
|
||||
|> Record.update_included_release_group_ids()
|
||||
%Record{}
|
||||
|> Record.add_musicbrainz_data(release_group)
|
||||
|> Ecto.Changeset.apply_changes()
|
||||
|
||||
assert Record.child_release_groups(record) == [
|
||||
@@ -85,8 +85,8 @@ defmodule MusicLibrary.Records.RecordTest do
|
||||
release_group = release_group(:lockdown_trilogy)
|
||||
|
||||
record =
|
||||
%Record{musicbrainz_data: release_group}
|
||||
|> Record.update_included_release_group_ids()
|
||||
%Record{}
|
||||
|> Record.add_musicbrainz_data(release_group)
|
||||
|> Ecto.Changeset.apply_changes()
|
||||
|
||||
assert Record.child_release_groups_count(record) == 4
|
||||
|
||||
Reference in New Issue
Block a user