70a8d42d06cb00dc3c4e349c591c1e1ceaf510d1
[akkoma] / lib / pleroma / workers / search_indexing_worker.ex
1 defmodule Pleroma.Workers.SearchIndexingWorker do
2 use Pleroma.Workers.WorkerHelper, queue: "search_indexing"
3
4 @impl Oban.Worker
5
6 def perform(%Job{args: %{"op" => "add_to_index", "activity" => activity_id}}) do
7 activity = Pleroma.Activity.get_by_id_with_object(activity_id)
8
9 search_module = Pleroma.Config.get([Pleroma.Search, :module])
10
11 search_module.add_to_index(activity)
12
13 :ok
14 end
15
16 def perform(%Job{args: %{"op" => "remove_from_index", "object" => object_id}}) do
17 object = Pleroma.Object.get_by_id(object_id)
18
19 search_module = Pleroma.Config.get([Pleroma.Search, :module])
20
21 search_module.remove_from_index(object)
22
23 :ok
24 end
25 end