Module: ActivePubsub
- Defined in:
- lib/active_pubsub.rb,
lib/active_pubsub/event.rb,
lib/active_pubsub/config.rb,
lib/active_pubsub/railtie.rb,
lib/active_pubsub/version.rb,
lib/active_pubsub/publisher.rb,
lib/active_pubsub/connection.rb,
lib/active_pubsub/subscriber.rb,
lib/active_pubsub/publishable.rb
Defined Under Namespace
Modules: Publishable
Classes: Config, Connection, Event, Publisher, Railtie, Subscriber
Constant Summary
collapse
- VERSION =
"0.0.2"
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.configuration ⇒ Object
Also known as:
config
Returns the value of attribute configuration.
13
14
15
|
# File 'lib/active_pubsub.rb', line 13
def configuration
@configuration
end
|
Class Method Details
19
20
21
22
23
24
25
|
# File 'lib/active_pubsub.rb', line 19
def self.configure
self.configuration ||= ::ActivePubsub::Config.new
yield(configuration)
::ActiveSupport.run_load_hooks(:active_pubsub, self)
end
|
.load_subscribers ⇒ Object
27
28
29
|
# File 'lib/active_pubsub.rb', line 27
def self.load_subscribers
::Dir.glob(::Rails.root.join('app', 'subscribers', "*.rb")).each{ |file| load file }
end
|
.publisher ⇒ Object
31
32
33
|
# File 'lib/active_pubsub.rb', line 31
def self.publisher
::Celluloid::Actor[:rabbit_publisher]
end
|
.start_publisher ⇒ Object
35
36
37
|
# File 'lib/active_pubsub.rb', line 35
def self.start_publisher
::ActivePubsub::Publisher.start unless ::ActivePubsub::Publisher.started?
end
|
.start_subscribers ⇒ Object
39
40
41
42
43
44
45
|
# File 'lib/active_pubsub.rb', line 39
def self.start_subscribers
puts "Starting subscriber"
::ActivePubsub::Subscriber.subclasses.each do |subscriber|
subscriber.bind_subscriptions!
subscriber.print_subscriptions!
end
end
|
.symbolize_routing_key(routing_key) ⇒ Object
47
48
49
|
# File 'lib/active_pubsub.rb', line 47
def self.symbolize_routing_key(routing_key)
:"#{routing_key.split('.').join('_')}"
end
|