Module: ActivePubsubRails

Extended by:
ActivePubsubRails
Included in:
ActivePubsubRails
Defined in:
lib/active_pubsub_rails.rb,
lib/active_pubsub_rails/engine.rb,
lib/active_pubsub_rails/version.rb,
lib/active_pubsub_rails/subscriber.rb,
lib/active_pubsub_rails/configuration.rb,
lib/active_pubsub_rails/subscriber_registry.rb,
lib/active_pubsub_rails/adapters/active_support_notifications.rb

Defined Under Namespace

Modules: Adapters, Subscriber Classes: Configuration, Engine, SubscriberRegistry

Constant Summary collapse

VERSION =
"0.4.0"

Instance Method Summary collapse

Instance Method Details

#adapterObject



31
32
33
# File 'lib/active_pubsub_rails.rb', line 31

def adapter
  @adapter ||= ActivePubsubRails::Adapters::ActiveSupportNotifications
end

#fire(event_name, opts = {}) ⇒ Object



10
11
12
13
14
# File 'lib/active_pubsub_rails.rb', line 10

def fire(event_name, opts = {})
  adapter.fire normalize_name(event_name), opts do
    yield opts if block_given?
  end
end

#listenersObject



27
28
29
# File 'lib/active_pubsub_rails.rb', line 27

def listeners
  adapter.listeners_for(listeners_names)
end

#subscribe(event_name, &block) ⇒ Object



16
17
18
19
20
# File 'lib/active_pubsub_rails.rb', line 16

def subscribe(event_name, &block)
  name = normalize_name(event_name)
  listeners_names << name
  adapter.subscribe(name, &block)
end

#subscriber_registryObject



35
36
37
# File 'lib/active_pubsub_rails.rb', line 35

def subscriber_registry
  @subscriber_registry ||= ActivePubsubRails::SubscriberRegistry.new
end

#unsubscribe(subscriber) ⇒ Object



22
23
24
25
# File 'lib/active_pubsub_rails.rb', line 22

def unsubscribe(subscriber)
  name_or_subscriber = subscriber.is_a?(String) ? normalize_name(subscriber) : subscriber
  adapter.unsubscribe(name_or_subscriber)
end