class MongoidAbility::FindLock::FindOwnedLock
Public Instance Methods
call()
click to toggle source
# File lib/mongoid_ability/find_lock.rb, line 57 def call return unless owner.respond_to?(:locks_relation) locks = owner.locks_relation.for_action(action).for_subject_type(subject_type) if subject_id.present? lock = locks.for_subject_id(subject_id).detect(&:closed?) || locks.for_subject_id(subject_id).detect(&:open?) return lock unless lock.nil? end locks.class_locks.detect(&:closed?) || locks.class_locks.detect(&:open?) end