Current section

Files

Jump to
flickrex lib flickrex parser.ex
Raw

lib/flickrex/parser.ex

defmodule Flickrex.Parser do
@moduledoc """
Parsers Flickr API JSON responses.
"""
@type response :: {:error, binary} | map
@spec parse(binary | map) :: response
def parse(response) when is_binary(response) do
response |> Poison.decode! |> parse
end
def parse(%{"stat" => "fail"} = response) do
{:error, response["message"]}
end
def parse(%{"stat" => "ok"} = response) do
Map.delete(response, "stat")
end
end