add a job queue

This commit is contained in:
Egor Kislitsyn 2019-01-28 22:17:17 +07:00
commit 55affbca7f
15 changed files with 358 additions and 142 deletions

View file

@ -7,7 +7,7 @@ defmodule Pleroma.Web.Websub do
alias Pleroma.Repo
alias Pleroma.Web.Websub.{WebsubServerSubscription, WebsubClientSubscription}
alias Pleroma.Web.OStatus.FeedRepresenter
alias Pleroma.Web.{XML, Endpoint, OStatus}
alias Pleroma.Web.{XML, Endpoint, OStatus, Federator}
alias Pleroma.Web.Router.Helpers
require Logger
@ -77,7 +77,7 @@ defmodule Pleroma.Web.Websub do
secret: sub.secret
}
Pleroma.Web.Federator.enqueue(:publish_single_websub, data)
Federator.publish_single_websub(data)
end)
end
@ -109,7 +109,7 @@ defmodule Pleroma.Web.Websub do
websub = Repo.update!(change)
Pleroma.Web.Federator.enqueue(:verify_websub, websub)
Federator.verify_websub(websub)
{:ok, websub}
else
@ -259,7 +259,7 @@ defmodule Pleroma.Web.Websub do
subs = Repo.all(query)
Enum.each(subs, fn sub ->
Pleroma.Web.Federator.enqueue(:request_subscription, sub)
Federator.request_subscription(sub)
end)
end

View file

@ -80,7 +80,7 @@ defmodule Pleroma.Web.Websub.WebsubController do
%WebsubClientSubscription{} = websub <- Repo.get(WebsubClientSubscription, id),
{:ok, body, _conn} = read_body(conn),
^signature <- Websub.sign(websub.secret, body) do
Federator.enqueue(:incoming_doc, body)
Federator.incoming_doc(body)
conn
|> send_resp(200, "OK")