Class: SharedBroker::Adapters::Base
- Inherits:
-
Object
- Object
- SharedBroker::Adapters::Base
show all
- Defined in:
- lib/shared_broker/adapters/base.rb
Instance Method Summary
collapse
-
#publish(topic, message, correlation_id: nil) ⇒ Object
-
#publish_batch(topic, messages, correlation_id: nil) ⇒ Object
-
#redrive_dlq(dlq_name, original_topic, limit: nil) ⇒ Object
-
#subscribe(topic, queue_name, max_retries: 3, backoff_base: 2, &block) ⇒ Object
Instance Method Details
#publish(topic, message, correlation_id: nil) ⇒ Object
6
7
8
|
# File 'lib/shared_broker/adapters/base.rb', line 6
def publish(topic, message, correlation_id: nil)
raise NotImplementedError, "#{self.class.name} must implement #publish"
end
|
#publish_batch(topic, messages, correlation_id: nil) ⇒ Object
10
11
12
13
14
15
16
17
18
|
# File 'lib/shared_broker/adapters/base.rb', line 10
def publish_batch(topic, messages, correlation_id: nil)
unless messages.is_a?(Array)
raise ArgumentError, "Expected messages to be an Array, got #{messages.class} with value #{messages.inspect}"
end
messages.each do |message|
publish(topic, message, correlation_id: correlation_id)
end
end
|
#redrive_dlq(dlq_name, original_topic, limit: nil) ⇒ Object
24
25
26
|
# File 'lib/shared_broker/adapters/base.rb', line 24
def redrive_dlq(dlq_name, original_topic, limit: nil)
raise NotImplementedError, "#{self.class.name} must implement #redrive_dlq"
end
|
#subscribe(topic, queue_name, max_retries: 3, backoff_base: 2, &block) ⇒ Object
20
21
22
|
# File 'lib/shared_broker/adapters/base.rb', line 20
def subscribe(topic, queue_name, max_retries: 3, backoff_base: 2, &block)
raise NotImplementedError, "#{self.class.name} must implement #subscribe"
end
|