Class: Totoro::Config

Inherits:
Object
  • Object
show all
Defined in:
lib/totoro/config.rb

Instance Method Summary collapse

Constructor Details

#initialize(prefix = nil) ⇒ Config

Returns a new instance of Config.



5
6
7
8
# File 'lib/totoro/config.rb', line 5

def initialize(prefix = nil)
  @data = Rails.application.config_for(:totoro).with_indifferent_access
  @data = @data[prefix] if prefix.present?
end

Instance Method Details

#clean_start?(id) ⇒ Boolean

Returns:

  • (Boolean)


34
35
36
# File 'lib/totoro/config.rb', line 34

def clean_start?(id)
  !!@data[:queue][id][:clean_start]
end

#connectObject



14
15
16
# File 'lib/totoro/config.rb', line 14

def connect
  @data[:connect]
end

#exchange(id) ⇒ Object



18
19
20
# File 'lib/totoro/config.rb', line 18

def exchange(id)
  @data[:exchange][id][:name]
end

#exchange_name_for_queue(queue_id) ⇒ Object



22
23
24
# File 'lib/totoro/config.rb', line 22

def exchange_name_for_queue(queue_id)
  @data[:queue][queue_id][:exchange]
end

#exchange_persistent?(id) ⇒ Boolean

Returns:

  • (Boolean)


30
31
32
# File 'lib/totoro/config.rb', line 30

def exchange_persistent?(id)
  !!@data[:exchange][id][:persistent]
end

#force_ack?(id) ⇒ Boolean

Returns:

  • (Boolean)


42
43
44
# File 'lib/totoro/config.rb', line 42

def force_ack?(id)
  manual_ack?(id) && !!@data[:queue][id][:force_ack]
end

#manual_ack?(id) ⇒ Boolean

Returns:

  • (Boolean)


38
39
40
# File 'lib/totoro/config.rb', line 38

def manual_ack?(id)
  !!@data[:queue][id][:manual_ack]
end

#queue(id) ⇒ Object



46
47
48
49
50
# File 'lib/totoro/config.rb', line 46

def queue(id)
  name = @data[:queue][id][:name]
  settings = { durable: @data[:queue][id][:durable] }
  [name, settings]
end

#queue_persistent?(id) ⇒ Boolean

Returns:

  • (Boolean)


26
27
28
# File 'lib/totoro/config.rb', line 26

def queue_persistent?(id)
  !!@data[:queue][id][:persistent]
end

#reset_dataObject



10
11
12
# File 'lib/totoro/config.rb', line 10

def reset_data
  @data = nil
end