Module: Hutch
- Defined in:
- lib/hutch.rb,
lib/hutch/cli.rb,
lib/hutch/broker.rb,
lib/hutch/config.rb,
lib/hutch/worker.rb,
lib/hutch/adapter.rb,
lib/hutch/adapter.rb,
lib/hutch/logging.rb,
lib/hutch/message.rb,
lib/hutch/tracers.rb,
lib/hutch/version.rb,
lib/hutch/consumer.rb,
lib/hutch/exceptions.rb,
lib/hutch/adapters/bunny.rb,
lib/hutch/error_handlers.rb,
lib/hutch/serializers/json.rb,
lib/hutch/tracers/newrelic.rb,
lib/hutch/adapters/march_hare.rb,
lib/hutch/tracers/null_tracer.rb,
lib/hutch/serializers/identity.rb,
lib/hutch/acknowledgements/base.rb,
lib/hutch/error_handlers/logger.rb,
lib/hutch/error_handlers/sentry.rb,
lib/hutch/error_handlers/airbrake.rb,
lib/hutch/error_handlers/honeybadger.rb,
lib/hutch/acknowledgements/nack_on_all_failures.rb
Defined Under Namespace
Modules: Acknowledgements, Adapters, Config, Consumer, ErrorHandlers, Logging, Serializers, Tracers
Classes: AuthenticationError, Broker, CLI, ConnectionError, Exception, Message, PublishError, UnknownAttributeError, Worker, WorkerSetupError
Constant Summary
collapse
- Adapter =
Adapters::BunnyAdapter
- VERSION =
'0.21.0'.freeze
Class Method Summary
collapse
Class Method Details
.broker ⇒ Object
49
50
51
|
# File 'lib/hutch.rb', line 49
def self.broker
@broker
end
|
.connect(options = {}, config = Hutch::Config) ⇒ Object
38
39
40
41
42
43
|
# File 'lib/hutch.rb', line 38
def self.connect(options = {}, config = Hutch::Config)
unless connected?
@broker = Hutch::Broker.new(config)
@broker.connect(options)
end
end
|
.connected? ⇒ Boolean
53
54
55
56
57
|
# File 'lib/hutch.rb', line 53
def self.connected?
return false unless broker
return false unless broker.connection
broker.connection.open?
end
|
.consumers ⇒ Object
22
23
24
|
# File 'lib/hutch.rb', line 22
def self.consumers
@consumers ||= []
end
|
.disconnect ⇒ Object
45
46
47
|
# File 'lib/hutch.rb', line 45
def self.disconnect
@broker.disconnect if @broker
end
|
.global_properties ⇒ Object
34
35
36
|
# File 'lib/hutch.rb', line 34
def self.global_properties
@global_properties ||= {}
end
|
.global_properties=(properties) ⇒ Object
30
31
32
|
# File 'lib/hutch.rb', line 30
def self.global_properties=(properties)
@global_properties = properties
end
|
.publish(*args) ⇒ Object
59
60
61
|
# File 'lib/hutch.rb', line 59
def self.publish(*args)
broker.publish(*args)
end
|
.register_consumer(consumer) ⇒ Object
18
19
20
|
# File 'lib/hutch.rb', line 18
def self.register_consumer(consumer)
self.consumers << consumer
end
|