Module: Waldit::Context
- Included in:
- Waldit
- Defined in:
- lib/waldit/context.rb
Instance Method Summary collapse
- #add_context(added_context) ⇒ Object
- #context ⇒ Object
- #new_context(context = {}) ⇒ Object
- #with_context(context = {}, &block) ⇒ Object
Instance Method Details
#add_context(added_context) ⇒ Object
18 19 20 |
# File 'lib/waldit/context.rb', line 18 def add_context(added_context) context&.merge!(added_context.as_json) end |
#context ⇒ Object
14 15 16 |
# File 'lib/waldit/context.rb', line 14 def context Thread.current[:waldit_context]&.last end |
#new_context(context = {}) ⇒ Object
22 23 24 25 |
# File 'lib/waldit/context.rb', line 22 def new_context(context = {}) Thread.current[:waldit_context] ||= [] Thread.current[:waldit_context].push(context.as_json) end |
#with_context(context = {}, &block) ⇒ Object
5 6 7 8 9 10 11 12 |
# File 'lib/waldit/context.rb', line 5 def with_context(context = {}, &block) current_context = self.context || {} Thread.current[:waldit_context] ||= [] Thread.current[:waldit_context].push(current_context.merge(context.as_json)) block.call ensure Thread.current[:waldit_context].pop end |