aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/web/streamer.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pleroma/web/streamer.ex')
-rw-r--r--lib/pleroma/web/streamer.ex34
1 files changed, 17 insertions, 17 deletions
diff --git a/lib/pleroma/web/streamer.ex b/lib/pleroma/web/streamer.ex
index 9f1080015..d64e6c393 100644
--- a/lib/pleroma/web/streamer.ex
+++ b/lib/pleroma/web/streamer.ex
@@ -1,7 +1,6 @@
defmodule Pleroma.Web.Streamer do
use GenServer
require Logger
- import Plug.Conn
alias Pleroma.{User, Notification}
def start_link do
@@ -38,17 +37,6 @@ defmodule Pleroma.Web.Streamer do
{:noreply, topics}
end
- def push_to_socket(topics, topic, item) do
- Enum.each(topics[topic] || [], fn (socket) ->
- json = %{
- event: "update",
- payload: Pleroma.Web.MastodonAPI.StatusView.render("status.json", activity: item, for: socket.assigns[:user]) |> Poison.encode!
- } |> Poison.encode!
-
- send socket.transport_pid, {:text, json}
- end)
- end
-
def handle_cast(%{action: :stream, topic: "user", item: %Notification{} = item}, topics) do
topic = "user:#{item.user_id}"
Enum.each(topics[topic] || [], fn (socket) ->
@@ -80,11 +68,6 @@ defmodule Pleroma.Web.Streamer do
{:noreply, topics}
end
- defp internal_topic("user", socket) do
- "user:#{socket.assigns[:user].id}"
- end
- defp internal_topic(topic, socket), do: topic
-
def handle_cast(%{action: :add, topic: topic, socket: socket}, sockets) do
topic = internal_topic(topic, socket)
sockets_for_topic = sockets[topic] || []
@@ -109,4 +92,21 @@ defmodule Pleroma.Web.Streamer do
IO.inspect("Unknown: #{inspect(m)}, #{inspect(state)}")
{:noreply, state}
end
+
+ def push_to_socket(topics, topic, item) do
+ Enum.each(topics[topic] || [], fn (socket) ->
+ json = %{
+ event: "update",
+ payload: Pleroma.Web.MastodonAPI.StatusView.render("status.json", activity: item, for: socket.assigns[:user]) |> Poison.encode!
+ } |> Poison.encode!
+
+ send socket.transport_pid, {:text, json}
+ end)
+ end
+
+ defp internal_topic("user", socket) do
+ "user:#{socket.assigns[:user].id}"
+ end
+
+ defp internal_topic(topic, _), do: topic
end