Packages

Elixir client for Apostle.io.

Current section

Files

Jump to
apostle lib queue_encoder.ex
Raw

lib/queue_encoder.ex

defimpl Poison.Encoder, for: Apostle.Queue do
def encode queue, _opts do
queue
|> Map.get(:emails)
|> Enum.reduce(%{recipients: %{}}, fn(mail,r)->
email = Map.get mail, :email
recipients = Map.get r, :recipients
recipients = Map.put recipients, email, mail
Map.put r, :recipients, recipients
end)
|> Poison.encode!
end
end