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