Module: Hey::Behavior
- Included in:
- Hey
- Defined in:
- lib/hey.rb
Instance Method Summary collapse
- #context(**hash) ⇒ Object
- #publish!(event_name, payload = {}, &block) ⇒ Object
- #subscribe!(event_name, &block) ⇒ Object
Instance Method Details
#context(**hash) ⇒ Object
36 37 38 39 40 41 42 43 |
# File 'lib/hey.rb', line 36 def context(**hash) _context = Context.new(hash) ThreadCargo.add_context(_context) yield ensure ThreadCargo.remove_context(_context) ThreadCargo.purge! if ThreadCargo.contexts.empty? end |
#publish!(event_name, payload = {}, &block) ⇒ Object
26 27 28 29 30 |
# File 'lib/hey.rb', line 26 def publish!(event_name, payload = {}, &block) event_name = Hey::EventName.new(event_name).to_s event = Hey::Pubsub::Event.new(name: event_name, metadata: payload) pubsub_adapter.publish!(event, &block) end |
#subscribe!(event_name, &block) ⇒ Object
32 33 34 |
# File 'lib/hey.rb', line 32 def subscribe!(event_name, &block) pubsub_adapter.subscribe!(event_name, &block) end |