From eaff073cd220ef87b8150454fc91fbbf796eddbc Mon Sep 17 00:00:00 2001 From: miffigriffi Date: Wed, 18 Sep 2019 00:18:45 +0200 Subject: [PATCH] Remove Dataloader related code from Mobilizon context --- lib/mobilizon/actors/actors.ex | 8 -------- lib/mobilizon/addresses/addresses.ex | 8 -------- lib/mobilizon/events/events.ex | 8 -------- lib/mobilizon/media/media.ex | 8 -------- lib/mobilizon/reports/reports.ex | 8 -------- lib/mobilizon/users/users.ex | 8 -------- lib/mobilizon_web/schema.ex | 14 +++++++++----- 7 files changed, 9 insertions(+), 53 deletions(-) diff --git a/lib/mobilizon/actors/actors.ex b/lib/mobilizon/actors/actors.ex index 8723d255..b5813864 100644 --- a/lib/mobilizon/actors/actors.ex +++ b/lib/mobilizon/actors/actors.ex @@ -48,14 +48,6 @@ defmodule Mobilizon.Actors do @public_visibility [:public, :unlisted] @administrator_roles [:creator, :administrator] - @doc false - @spec data :: Dataloader.Ecto.t() - def data, do: Dataloader.Ecto.new(Repo, query: &query/2) - - @doc false - @spec query(Ecto.Query.t(), map) :: Ecto.Query.t() - def query(queryable, _params), do: queryable - @doc """ Gets a single actor. """ diff --git a/lib/mobilizon/addresses/addresses.ex b/lib/mobilizon/addresses/addresses.ex index fdef1ca7..0c250e10 100644 --- a/lib/mobilizon/addresses/addresses.ex +++ b/lib/mobilizon/addresses/addresses.ex @@ -10,14 +10,6 @@ defmodule Mobilizon.Addresses do require Logger - @doc false - @spec data :: Dataloader.Ecto.t() - def data, do: Dataloader.Ecto.new(Repo, query: &query/2) - - @doc false - @spec query(Ecto.Query.t(), map) :: Ecto.Query.t() - def query(queryable, _params), do: queryable - @doc """ Gets a single address. """ diff --git a/lib/mobilizon/events/events.ex b/lib/mobilizon/events/events.ex index e3354b38..152ce813 100644 --- a/lib/mobilizon/events/events.ex +++ b/lib/mobilizon/events/events.ex @@ -90,14 +90,6 @@ defmodule Mobilizon.Events do @comment_preloads [:actor, :attributed_to, :in_reply_to_comment] - @doc false - @spec data :: Dataloader.Ecto.t() - def data, do: Dataloader.Ecto.new(Repo, query: &query/2) - - @doc false - @spec query(Ecto.Query.t(), map) :: Ecto.Query.t() - def query(queryable, _params), do: queryable - @doc """ Gets a single event. """ diff --git a/lib/mobilizon/media/media.ex b/lib/mobilizon/media/media.ex index c1923443..2062ae07 100644 --- a/lib/mobilizon/media/media.ex +++ b/lib/mobilizon/media/media.ex @@ -10,14 +10,6 @@ defmodule Mobilizon.Media do alias Mobilizon.Media.{File, Picture} alias Mobilizon.Storage.Repo - @doc false - @spec data :: Dataloader.Ecto.t() - def data, do: Dataloader.Ecto.new(Repo, query: &query/2) - - @doc false - @spec query(Ecto.Query.t(), map) :: Ecto.Query.t() - def query(queryable, _params), do: queryable - @doc """ Gets a single picture. """ diff --git a/lib/mobilizon/reports/reports.ex b/lib/mobilizon/reports/reports.ex index 95c96f73..21d7148a 100644 --- a/lib/mobilizon/reports/reports.ex +++ b/lib/mobilizon/reports/reports.ex @@ -13,14 +13,6 @@ defmodule Mobilizon.Reports do defenum(ReportStatus, :report_status, [:open, :closed, :resolved]) - @doc false - @spec data :: Dataloader.Ecto.t() - def data, do: Dataloader.Ecto.new(Repo, query: &query/2) - - @doc false - @spec query(Ecto.Query.t(), map) :: Ecto.Query.t() - def query(queryable, _params), do: queryable - @doc """ Gets a single report. """ diff --git a/lib/mobilizon/users/users.ex b/lib/mobilizon/users/users.ex index 1c3ddabb..2fe78498 100644 --- a/lib/mobilizon/users/users.ex +++ b/lib/mobilizon/users/users.ex @@ -20,14 +20,6 @@ defmodule Mobilizon.Users do defenum(UserRole, :user_role, [:administrator, :moderator, :user]) - @doc false - @spec data :: Dataloader.Ecto.t() - def data, do: Dataloader.Ecto.new(Repo, query: &query/2) - - @doc false - @spec query(Ecto.Query.t(), map) :: Ecto.Query.t() - def query(queryable, _params), do: queryable - @doc """ Registers an user. """ diff --git a/lib/mobilizon_web/schema.ex b/lib/mobilizon_web/schema.ex index c3819ab7..8411349a 100644 --- a/lib/mobilizon_web/schema.ex +++ b/lib/mobilizon_web/schema.ex @@ -7,6 +7,7 @@ defmodule MobilizonWeb.Schema do alias Mobilizon.{Actors, Events, Users, Addresses, Media} alias Mobilizon.Actors.{Actor, Follower, Member} alias Mobilizon.Events.{Event, Comment, Participant} + alias Mobilizon.Storage.Repo import_types(MobilizonWeb.Schema.Custom.UUID) import_types(MobilizonWeb.Schema.Custom.Point) @@ -87,13 +88,16 @@ defmodule MobilizonWeb.Schema do end def context(ctx) do + default_query = fn queryable, _params -> queryable end + default_source = Dataloader.Ecto.new(Repo, query: default_query) + loader = Dataloader.new() - |> Dataloader.add_source(Actors, Actors.data()) - |> Dataloader.add_source(Users, Users.data()) - |> Dataloader.add_source(Events, Events.data()) - |> Dataloader.add_source(Addresses, Addresses.data()) - |> Dataloader.add_source(Media, Media.data()) + |> Dataloader.add_source(Actors, default_source) + |> Dataloader.add_source(Users, default_source) + |> Dataloader.add_source(Events, default_source) + |> Dataloader.add_source(Addresses, default_source) + |> Dataloader.add_source(Media, default_source) Map.put(ctx, :loader, loader) end