diff options
Diffstat (limited to 'lib/declarative_policy/cache.rb')
-rw-r--r-- | lib/declarative_policy/cache.rb | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/lib/declarative_policy/cache.rb b/lib/declarative_policy/cache.rb deleted file mode 100644 index 13006e56454..00000000000 --- a/lib/declarative_policy/cache.rb +++ /dev/null @@ -1,39 +0,0 @@ -# frozen_string_literal: true - -module DeclarativePolicy - module Cache - class << self - def user_key(user) - return '<anonymous>' if user.nil? - - id_for(user) - end - - def policy_key(user, subject) - u = user_key(user) - s = subject_key(subject) - "/dp/policy/#{u}/#{s}" - end - - def subject_key(subject) - return '<nil>' if subject.nil? - return subject.inspect if subject.is_a?(Symbol) - - "#{subject.class.name}:#{id_for(subject)}" - end - - private - - def id_for(obj) - id = - begin - obj.id - rescue NoMethodError - nil - end - - id || "##{obj.object_id}" - end - end - end -end |