Module: MultipleMan
- Defined in:
- lib/multiple_man.rb,
lib/multiple_man/cli.rb,
lib/multiple_man/runner.rb,
lib/multiple_man/publish.rb,
lib/multiple_man/railtie.rb,
lib/multiple_man/version.rb,
lib/multiple_man/identity.rb,
lib/multiple_man/connection.rb,
lib/multiple_man/routing_key.rb,
lib/multiple_man/configuration.rb,
lib/multiple_man/mixins/listener.rb,
lib/multiple_man/model_populator.rb,
lib/multiple_man/model_publisher.rb,
lib/multiple_man/mixins/publisher.rb,
lib/multiple_man/consumers/general.rb,
lib/multiple_man/mixins/subscriber.rb,
lib/multiple_man/payload_generator.rb,
lib/multiple_man/attribute_extractor.rb,
lib/multiple_man/channel_maintenance/gc.rb,
lib/multiple_man/channel_maintenance/reaper.rb
Defined Under Namespace
Modules: CLI, ChannelMaintenance, Consumers, Listener, Publisher, Subscriber, Subscribers
Classes: AttributeExtractor, Configuration, Connection, Identity, ModelPopulator, ModelPublisher, Options, PayloadGenerator, Railtie, RoutingKey, Runner
Constant Summary
collapse
- Error =
Class.new(StandardError)
- ConsumerError =
Class.new(Error)
- VERSION =
"1.1.1"
Class Method Summary
collapse
Class Method Details
.configuration ⇒ Object
2
3
4
|
# File 'lib/multiple_man/configuration.rb', line 2
def self.configuration
@configuration ||= Configuration.new
end
|
6
7
8
|
# File 'lib/multiple_man/configuration.rb', line 6
def self.configure
yield(configuration) if block_given?
end
|
.disable! ⇒ Object
38
39
40
|
# File 'lib/multiple_man.rb', line 38
def self.disable!
configuration.enabled = false
end
|
.enable! ⇒ Object
42
43
44
|
# File 'lib/multiple_man.rb', line 42
def self.enable!
configuration.enabled = true
end
|
.error(ex, options = {}) ⇒ Object
46
47
48
49
50
51
52
53
54
55
56
|
# File 'lib/multiple_man.rb', line 46
def self.error(ex, options = {})
raise ex unless configuration.error_handler
if configuration.error_handler.arity == 3
configuration.error_handler.call(ex, options[:payload], options[:delivery_info])
else
configuration.error_handler.call(ex)
end
raise ex if configuration.reraise_errors && options[:reraise] != false
end
|
.logger ⇒ Object
34
35
36
|
# File 'lib/multiple_man.rb', line 34
def self.logger
configuration.logger
end
|
.publish(klass, options) ⇒ Object
2
3
4
5
|
# File 'lib/multiple_man/publish.rb', line 2
def self.publish(klass, options)
klass.send(:include, MultipleMan::Publisher)
klass.publish options
end
|
.trap_signals! ⇒ Object
4
5
6
7
8
9
10
11
12
13
14
15
|
# File 'lib/multiple_man/runner.rb', line 4
def self.trap_signals!
return if @signals_trapped
@signals_trapped = true
handler = proc do |signal|
puts "received #{Signal.signame(signal)}"
exit
end
%w(INT QUIT TERM).each { |signal| Signal.trap(signal, handler) }
end
|