aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/workers/search_indexing_worker.ex
blob: 8476a2be50960827dd8f9407da6c44d2fa66a908 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
defmodule Pleroma.Workers.SearchIndexingWorker do
  use Pleroma.Workers.WorkerHelper, queue: "search_indexing"

  @impl Oban.Worker

  alias Pleroma.Config.Getting, as: Config

  def perform(%Job{args: %{"op" => "add_to_index", "activity" => activity_id}}) do
    activity = Pleroma.Activity.get_by_id_with_object(activity_id)

    search_module = Config.get([Pleroma.Search, :module])

    search_module.add_to_index(activity)
  end

  def perform(%Job{args: %{"op" => "remove_from_index", "object" => object_id}}) do
    object = Pleroma.Object.get_by_id(object_id)

    search_module = Config.get([Pleroma.Search, :module])

    search_module.remove_from_index(object)
  end
end