Initial attempt at updating return type
[akkoma] / lib / pleroma / jobs.ex
index 2a75ff529a59c6097be6482fdae5684e841d87bc..24b7e5e466261e86a9f1ba975cc1597007f43cf8 100644 (file)
@@ -76,7 +76,8 @@ defmodule Pleroma.Jobs do
       apply(mod, :perform, args)
     end
   else
-    def enqueue(queue_name, mod, args, priority \\ 1) do
+    @spec enqueue(atom(), atom(), [any()], integer()) :: :ok
+    def enqueue(queue_name, mod, args, priority) do
       GenServer.cast(__MODULE__, {:enqueue, queue_name, mod, args, priority})
     end
   end
@@ -101,7 +102,11 @@ defmodule Pleroma.Jobs do
 
     running_jobs = :sets.del_element(ref, running_jobs)
 
-    state = state |> remove_ref(ref) |> maybe_start_job(queue_name, running_jobs, queue)
+    state =
+      state
+      |> remove_ref(ref)
+      |> update_queue(queue_name, {running_jobs, queue})
+      |> maybe_start_job(queue_name, running_jobs, queue)
 
     {:noreply, state}
   end
@@ -117,7 +122,7 @@ defmodule Pleroma.Jobs do
       |> add_ref(queue_name, mref)
       |> update_queue(queue_name, {:sets.add_element(mref, running_jobs), queue})
     else
-      update_queue(state, queue_name, {running_jobs, queue})
+      state
     end
   end