diff options
author | rinpatch <rinpatch@sdf.org> | 2019-01-16 10:35:06 +0300 |
---|---|---|
committer | rinpatch <rinpatch@sdf.org> | 2019-01-16 10:35:06 +0300 |
commit | a76793006bb64723b4fe0aa054765edadc65905c (patch) | |
tree | 75fdd30813abe7e322dab48be402f4bf88528207 /lib/pleroma/web | |
parent | 0039d45b5b695a28660dd56ff74fa45414c92e47 (diff) | |
download | pleroma-a76793006bb64723b4fe0aa054765edadc65905c.tar.gz |
Thanks you rinpatch, very cool
Diffstat (limited to 'lib/pleroma/web')
-rw-r--r-- | lib/pleroma/web/metadata.ex | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/pleroma/web/metadata.ex b/lib/pleroma/web/metadata.ex index 890367152..bc0f3beed 100644 --- a/lib/pleroma/web/metadata.ex +++ b/lib/pleroma/web/metadata.ex @@ -2,10 +2,17 @@ defmodule Pleroma.Web.Metadata do alias Phoenix.HTML @parsers Pleroma.Config.get([:metadata, :providers], []) + def get_cached_tags(%{activity: activity, user: user} = params) do + # We don't need to use the both activity and a user since the object can't change it's content + key = "#{:erlang.term_to_binary(user)}#{activity.data["id"]}" + + Cachex.fetch!(:metadata_cache, key, fn _key -> + {:commit, build_tags(params)} + end) + end def get_cached_tags(%{user: user} = params) do # I am unsure how well ETS works with big keys - # We don't need to use the both activity and a user since the object can't change it's content key = :erlang.term_to_binary(user) Cachex.fetch!(:metadata_cache, key, fn _key -> |