Remove unused functionality and make functions private
This commit is contained in:
@@ -32,35 +32,6 @@ defmodule MusicLibrary.Records.Batch do
|
|||||||
end
|
end
|
||||||
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
|
defp run_on_all_records(fun) do
|
||||||
q = from(r in Record)
|
q = from(r in Record)
|
||||||
stream = Repo.stream(q, max_rows: 50)
|
stream = Repo.stream(q, max_rows: 50)
|
||||||
|
|||||||
@@ -72,12 +72,6 @@ defmodule MusicLibrary.Records.Record do
|
|||||||
Enum.count(record.release_ids)
|
Enum.count(record.release_ids)
|
||||||
end
|
end
|
||||||
|
|
||||||
def add_artists(record, artists_attrs) do
|
|
||||||
record
|
|
||||||
|> change()
|
|
||||||
|> put_embed(:artists, artists_attrs)
|
|
||||||
end
|
|
||||||
|
|
||||||
def add_genres(record, genres) do
|
def add_genres(record, genres) do
|
||||||
change(record, genres: genres)
|
change(record, genres: genres)
|
||||||
end
|
end
|
||||||
@@ -95,13 +89,7 @@ defmodule MusicLibrary.Records.Record do
|
|||||||
|> update_included_release_group_ids()
|
|> update_included_release_group_ids()
|
||||||
end
|
end
|
||||||
|
|
||||||
def update_release_ids(record = %__MODULE__{musicbrainz_data: musicbrainz_data}) do
|
defp update_release_ids(changeset) 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
|
|
||||||
case get_change(changeset, :musicbrainz_data) do
|
case get_change(changeset, :musicbrainz_data) do
|
||||||
nil ->
|
nil ->
|
||||||
changeset
|
changeset
|
||||||
@@ -112,13 +100,7 @@ defmodule MusicLibrary.Records.Record do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def update_included_release_group_ids(record = %__MODULE__{musicbrainz_data: musicbrainz_data}) do
|
defp update_included_release_group_ids(changeset) do
|
||||||
change(record,
|
|
||||||
included_release_group_ids: extract_included_release_group_ids(musicbrainz_data)
|
|
||||||
)
|
|
||||||
end
|
|
||||||
|
|
||||||
def update_included_release_group_ids(changeset) do
|
|
||||||
case get_change(changeset, :musicbrainz_data) do
|
case get_change(changeset, :musicbrainz_data) do
|
||||||
nil ->
|
nil ->
|
||||||
changeset
|
changeset
|
||||||
|
|||||||
@@ -43,8 +43,8 @@ defmodule MusicLibrary.Records.RecordTest do
|
|||||||
release_group = release_group(:lockdown_trilogy)
|
release_group = release_group(:lockdown_trilogy)
|
||||||
|
|
||||||
record =
|
record =
|
||||||
%Record{musicbrainz_data: release_group}
|
%Record{}
|
||||||
|> Record.update_included_release_group_ids()
|
|> Record.add_musicbrainz_data(release_group)
|
||||||
|> Ecto.Changeset.apply_changes()
|
|> Ecto.Changeset.apply_changes()
|
||||||
|
|
||||||
assert Record.child_release_groups(record) == [
|
assert Record.child_release_groups(record) == [
|
||||||
@@ -85,8 +85,8 @@ defmodule MusicLibrary.Records.RecordTest do
|
|||||||
release_group = release_group(:lockdown_trilogy)
|
release_group = release_group(:lockdown_trilogy)
|
||||||
|
|
||||||
record =
|
record =
|
||||||
%Record{musicbrainz_data: release_group}
|
%Record{}
|
||||||
|> Record.update_included_release_group_ids()
|
|> Record.add_musicbrainz_data(release_group)
|
||||||
|> Ecto.Changeset.apply_changes()
|
|> Ecto.Changeset.apply_changes()
|
||||||
|
|
||||||
assert Record.child_release_groups_count(record) == 4
|
assert Record.child_release_groups_count(record) == 4
|
||||||
|
|||||||
Reference in New Issue
Block a user