Module: Fleck
- Defined in:
- lib/fleck.rb,
lib/fleck/client.rb,
lib/fleck/version.rb,
lib/fleck/consumer.rb,
lib/fleck/configuration.rb,
lib/fleck/client/request.rb,
lib/fleck/client/response.rb,
lib/fleck/consumer/request.rb,
lib/fleck/consumer/response.rb
Defined Under Namespace
Modules: Loggable
Classes: Client, Configuration, Consumer
Constant Summary
collapse
- VERSION =
"0.1.2"
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.config ⇒ Object
Returns the value of attribute config.
71
72
73
|
# File 'lib/fleck.rb', line 71
def config
@config
end
|
Class Method Details
24
25
26
27
|
# File 'lib/fleck.rb', line 24
def self.configure
yield @config if block_given?
@config
end
|
.connection(options) ⇒ Object
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# File 'lib/fleck.rb', line 39
def self.connection(options)
opts = Fleck.config.default_options.merge(options)
key = "ampq://#{opts[:user]}@#{opts[:host]}:#{opts[:port]}#{opts[:vhost]}"
conn = @connections[key]
if !conn || conn.closed?
opts[:logger] = Fleck.logger.clone
opts[:logger].progname += "::Bunny"
logger.info "New connection #{key}"
conn = Bunny.new(opts)
conn.start
@connections[key] = conn
end
return conn
end
|
.logger ⇒ Object
29
30
31
|
# File 'lib/fleck.rb', line 29
def self.logger
@config.logger
end
|
.register_consumer(consumer_class) ⇒ Object
33
34
35
36
37
|
# File 'lib/fleck.rb', line 33
def self.register_consumer(consumer_class)
unless @consumers.include?(consumer_class)
@consumers << consumer_class
end
end
|
.terminate ⇒ Object
54
55
56
57
58
59
60
61
62
63
64
65
66
|
# File 'lib/fleck.rb', line 54
def self.terminate
@connections.each do |key, connection|
begin
Fleck.logger.info "Closing connection #{key}"
connection.close
rescue => e
Fleck.logger.error e.inspect
end
end
@connections.clear
true
end
|