rich media: parser: cache negatives

This commit is contained in:
William Pitcock 2019-01-28 20:19:07 +00:00
parent 8fb16e9f0f
commit 83b7062634
1 changed files with 9 additions and 7 deletions

View File

@ -15,11 +15,13 @@ def parse(nil), do: {:error, "No URL provided"}
def parse(url), do: parse_url(url)
else
def parse(url) do
with {:ok, data} <- Cachex.fetch(:rich_media_cache, url, fn _ -> parse_url(url) end) do
data
else
_e ->
{:error, "Parsing error"}
try do
Cachex.fetch!(:rich_media_cache, url, fn _ ->
{:commit, parse_url(url)}
end)
rescue
e ->
{:error, "Cachex error: #{inspect(e)}"}
end
end
end
@ -30,8 +32,8 @@ defp parse_url(url) do
html |> maybe_parse() |> get_parsed_data()
rescue
_e ->
{:error, "Parsing error"}
e ->
{:error, "Parsing error: #{inspect(e)}"}
end
end