Top Level Namespace
Defined Under Namespace
Classes: ConfigError, ErrorReporter, Publisher, ServicesManager, Subscriber
Instance Method Summary
collapse
Instance Method Details
#at_least_one_binding_key_exists?(config) ⇒ Boolean
79
80
81
82
83
84
85
86
87
88
89
90
|
# File 'lib/bunny-pub-sub/helper/config_checks.rb', line 79
def at_least_one_binding_key_exists?(config)
if (config[:BINDING_KEYS].nil? &&
config[:DEFAULT_BINDING_KEY].nil?) ||
(config[:BINDING_KEYS]&.strip&.empty? &&
config[:DEFAULT_BINDING_KEY]&.strip&.empty?)
puts 'Either BINDING_KEYS or '\
'DEFAULT_BINDING_KEY must be defined and must not be empty'
false
else
true
end
end
|
#binding_keys_to_array(config) ⇒ Object
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
# File 'lib/bunny-pub-sub/helper/config_checks.rb', line 62
def binding_keys_to_array(config)
language_environments = []
unless config[:DEFAULT_BINDING_KEY]&.strip&.empty?
language_environments.push(config[:DEFAULT_BINDING_KEY])
end
if !config[:BINDING_KEYS].nil? && !config[:BINDING_KEYS].empty?
language_environments = [language_environments | config[:BINDING_KEYS].split(',')].flatten
end
return nil if language_environments.empty?
valid_binding_keys?(language_environments) ? language_environments : nil
end
|
#register_subscriber(subscriber_config, action, results_publisher) ⇒ Object
126
127
128
129
130
131
132
133
134
135
|
# File 'lib/bunny-pub-sub/subscriber.rb', line 126
def register_subscriber(subscriber_config,
action,
results_publisher)
subscriber_instance = Subscriber.new subscriber_config, results_publisher
subscriber_instance.start_subscriber(action)
subscriber_instance
rescue RuntimeError => e
puts e
end
|
#routing_key_exists?(config) ⇒ Boolean
Publisher only checks BEGIN ==================================================
97
98
99
100
101
102
103
104
105
|
# File 'lib/bunny-pub-sub/helper/config_checks.rb', line 97
def routing_key_exists?(config)
if config[:ROUTING_KEY].nil? ||
config[:ROUTING_KEY]&.strip&.empty?
puts 'ROUTING_KEY must be defined and must not be empty'
false
else
true
end
end
|
#valid_binding_keys?(language_environments, type = 'topic') ⇒ Boolean
Subscriber only checks BEGIN =================================================
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
# File 'lib/bunny-pub-sub/helper/config_checks.rb', line 41
def valid_binding_keys?(language_environments, type='topic')
case type
when 'topic'
language_environments.each do |language_environment|
if !language_environment.is_a?(String) ||
language_environment.strip.empty?
return false
end
end
end
true
end
|
#valid_config?(config) ⇒ Boolean
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'lib/bunny-pub-sub/helper/config_checks.rb', line 5
def valid_config?(config)
raise ConfigError, 'CONFIG must not be nil' if config.nil?
flag = true, error_msgs = []
if config[:RABBITMQ_HOSTNAME].nil? ||
config[:RABBITMQ_HOSTNAME]&.strip&.empty?
error_msgs << 'Must define config variable RABBITMQ_HOSTNAME'
flag = false
end
if config[:RABBITMQ_USERNAME].nil? ||
config[:RABBITMQ_USERNAME]&.strip&.empty?
error_msgs << 'Must define config variable RABBITMQ_USERNAME'
flag = false
end
if config[:RABBITMQ_PASSWORD].nil? ||
config[:RABBITMQ_PASSWORD]&.strip&.empty?
error_msgs << 'Must define config variable RABBITMQ_PASSWORD'
flag = false
end
if config[:EXCHANGE_NAME].nil? ||
config[:EXCHANGE_NAME]&.strip&.empty?
error_msgs << 'Must define config variable EXCHANGE_NAME'
flag = false
end
if config[:DURABLE_QUEUE_NAME].nil? ||
config[:DURABLE_QUEUE_NAME]&.strip&.empty?
error_msgs << 'Must define config variable DURABLE_QUEUE_NAME'
flag = false
end
raise ConfigError, error_msgs unless flag
flag
end
|