Class: Upkeep::Runtime::Current
- Inherits:
-
Object
- Object
- Upkeep::Runtime::Current
- Defined in:
- lib/upkeep/runtime.rb
Constant Summary collapse
- THREAD_KEY =
:upkeep_current_user
Class Method Summary collapse
Class Method Details
.set(user:) ⇒ Object
809 810 811 812 813 814 815 |
# File 'lib/upkeep/runtime.rb', line 809 def set(user:) previous = Thread.current[THREAD_KEY] Thread.current[THREAD_KEY] = user yield ensure Thread.current[THREAD_KEY] = previous end |
.user ⇒ Object
817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 |
# File 'lib/upkeep/runtime.rb', line 817 def user user = Thread.current[THREAD_KEY] return user unless Observation.recording? dependency = Dependencies::Identity.new( source: "Current.user", key: "id", value: user&.id, metadata: { model: user&.class&.name, table: user&.class&.table_name, id: user&.id }.compact ) Observation.record_dependency(dependency) user end |