12
lib/web/cache/cache.ex
vendored
12
lib/web/cache/cache.ex
vendored
@@ -10,21 +10,9 @@ defmodule Mobilizon.Web.Cache do
|
||||
alias Mobilizon.Resources.Resource
|
||||
alias Mobilizon.Todos.{Todo, TodoList}
|
||||
alias Mobilizon.Web.Cache.ActivityPub
|
||||
import Mobilizon.Service.Guards, only: [is_valid_string: 1]
|
||||
|
||||
@caches [:activity_pub, :feed, :ics]
|
||||
|
||||
@type local_actor :: %Actor{domain: nil}
|
||||
|
||||
@doc """
|
||||
Clears all caches for a local actor.
|
||||
"""
|
||||
@spec clear_cache(%Actor{domain: nil, preferred_username: String.t()}) :: :ok
|
||||
def clear_cache(%Actor{preferred_username: preferred_username, domain: nil})
|
||||
when is_valid_string(preferred_username) do
|
||||
Enum.each(@caches, &Cachex.del(&1, "actor_" <> preferred_username))
|
||||
end
|
||||
|
||||
@spec get_actor_by_name(binary) :: {:commit, Actor.t()} | {:ignore, nil}
|
||||
defdelegate get_actor_by_name(name), to: ActivityPub
|
||||
@spec get_local_actor_by_name(binary) :: {:commit, Actor.t()} | {:ignore, nil}
|
||||
|
||||
Reference in New Issue
Block a user