Class: Seams::Events::Adapter

Inherits:
Object
  • Object
show all
Defined in:
lib/seams/events/adapter.rb

Overview

Abstract base class for event-bus adapters. Real adapters wrap a transport (ActiveSupport::Notifications, an external queue, etc.) and implement the three primitives below.

Direct Known Subclasses

Seams::Events::Adapters::ActiveSupport

Instance Method Summary collapse

Instance Method Details

#publish(_event_name, _payload) ⇒ Object

Raises:

  • (NotImplementedError)


11
12
13
# File 'lib/seams/events/adapter.rb', line 11

def publish(_event_name, _payload)
  raise NotImplementedError, "#{self.class} must implement #publish"
end

#subscribe(_event_name) ⇒ Object

Raises:

  • (NotImplementedError)


15
16
17
# File 'lib/seams/events/adapter.rb', line 15

def subscribe(_event_name, &)
  raise NotImplementedError, "#{self.class} must implement #subscribe"
end

#unsubscribe(_subscriber) ⇒ Object

Raises:

  • (NotImplementedError)


19
20
21
# File 'lib/seams/events/adapter.rb', line 19

def unsubscribe(_subscriber)
  raise NotImplementedError, "#{self.class} must implement #unsubscribe"
end