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
748 749 750 751 752 753 754 |
# File 'lib/upkeep/runtime.rb', line 748 def set(user:) previous = Thread.current[THREAD_KEY] Thread.current[THREAD_KEY] = user yield ensure Thread.current[THREAD_KEY] = previous end |
.user ⇒ Object
756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 |
# File 'lib/upkeep/runtime.rb', line 756 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 |