commit: 0fae71f88d142f64ec18a49ff4292db816dacdc8
parent 39e596a5b51c0c86b6d6bd5f23177a1e6a64cf0b
Author: Ekaterina Vaartis <vaartis@kotobank.ch>
Date: Tue, 16 Nov 2021 21:54:26 +0300
Rename search.ex to database_search.ex and add search/2
Diffstat:
5 files changed, 28 insertions(+), 24 deletions(-)
diff --git a/lib/pleroma/search.ex b/lib/pleroma/search.ex
@@ -1,18 +0,0 @@
-defmodule Pleroma.Search do
- def add_to_index(activity) do
- search_module = Pleroma.Config.get([Pleroma.Search, :module])
-
- ConcurrentLimiter.limit(Pleroma.Search, fn ->
- Task.start(fn -> search_module.add_to_index(activity) end)
- end)
- end
-
- def remove_from_index(object) do
- # Also delete from search index
- search_module = Pleroma.Config.get([Pleroma.Search, :module])
-
- ConcurrentLimiter.limit(Pleroma.Search, fn ->
- Task.start(fn -> search_module.remove_from_index(object) end)
- end)
- end
-end
diff --git a/lib/pleroma/search/database_search.ex b/lib/pleroma/search/database_search.ex
@@ -0,0 +1,24 @@
+defmodule Pleroma.Search.DatabaseSearch do
+ def add_to_index(activity) do
+ search_module = Pleroma.Config.get([Pleroma.Search, :module])
+
+ ConcurrentLimiter.limit(Pleroma.Search, fn ->
+ Task.start(fn -> search_module.add_to_index(activity) end)
+ end)
+ end
+
+ def remove_from_index(object) do
+ # Also delete from search index
+ search_module = Pleroma.Config.get([Pleroma.Search, :module])
+
+ ConcurrentLimiter.limit(Pleroma.Search, fn ->
+ Task.start(fn -> search_module.remove_from_index(object) end)
+ end)
+ end
+
+ def search(query, options) do
+ search_module = Pleroma.Config.get([Pleroma.Search, :module], Pleroma.Activity)
+
+ search_module.search(options[:for_user], query, options)
+ end
+end
diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex
@@ -141,7 +141,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
end)
# Add local posts to search index
- if local, do: Pleroma.Search.add_to_index(activity)
+ if local, do: Pleroma.Search.DatabaseSearch.add_to_index(activity)
{:ok, activity}
else
diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex
@@ -227,7 +227,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do
Task.start(fn -> Pleroma.Web.RichMedia.Helpers.fetch_data_for_activity(activity) end)
end)
- Pleroma.Search.add_to_index(Map.put(activity, :object, object))
+ Pleroma.Search.DatabaseSearch.add_to_index(Map.put(activity, :object, object))
meta =
meta
@@ -330,7 +330,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do
if result == :ok do
Notification.create_notifications(object)
- Pleroma.Search.remove_from_index(deleted_object)
+ Pleroma.Search.DatabaseSearch.remove_from_index(deleted_object)
{:ok, object, meta}
else
diff --git a/lib/pleroma/web/mastodon_api/controllers/search_controller.ex b/lib/pleroma/web/mastodon_api/controllers/search_controller.ex
@@ -99,9 +99,7 @@ defmodule Pleroma.Web.MastodonAPI.SearchController do
end
defp resource_search(_, "statuses", query, options) do
- search_module = Pleroma.Config.get([Pleroma.Search, :module], Pleroma.Activity)
-
- statuses = with_fallback(fn -> search_module.search(options[:for_user], query, options) end)
+ statuses = with_fallback(fn -> Pleroma.Search.DatabaseSearch.search(query, options) end)
StatusView.render("index.json",
activities: statuses,