diff options
author | Roger Braun <roger@rogerbraun.net> | 2017-05-05 11:46:59 +0200 |
---|---|---|
committer | Roger Braun <roger@rogerbraun.net> | 2017-05-05 11:46:59 +0200 |
commit | c48c381e909240dcece9f961e4728fa712d089cc (patch) | |
tree | 6aa2a1edbfe5d15860ab5090c645bc9ba312ab96 /lib/pleroma/object.ex | |
parent | 6cf7c132282e612514af992c6dea0b03ee5b678d (diff) | |
parent | c85998ab8a21f042ab57345a7baa9e1e27c308d1 (diff) | |
download | pleroma-c48c381e909240dcece9f961e4728fa712d089cc.tar.gz |
Merge branch 'develop' into dtluna/pleroma-refactor/1
Diffstat (limited to 'lib/pleroma/object.ex')
-rw-r--r-- | lib/pleroma/object.ex | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/pleroma/object.ex b/lib/pleroma/object.ex index f932034d7..949ccb0f6 100644 --- a/lib/pleroma/object.ex +++ b/lib/pleroma/object.ex @@ -13,4 +13,24 @@ defmodule Pleroma.Object do Repo.one(from object in Object, where: fragment("? @> ?", object.data, ^%{id: ap_id})) end + + def get_cached_by_ap_id(ap_id) do + if Mix.env == :test do + get_by_ap_id(ap_id) + else + key = "object:#{ap_id}" + Cachex.get!(:user_cache, key, fallback: fn(_) -> + object = get_by_ap_id(ap_id) + if object do + {:commit, object} + else + {:ignore, object} + end + end) + end + end + + def context_mapping(context) do + %Object{data: %{"id" => context}} + end end |