Class: Dionysus::Producer::Outbox::Producer
- Inherits:
-
Object
- Object
- Dionysus::Producer::Outbox::Producer
- Defined in:
- lib/dionysus/producer/outbox/producer.rb
Instance Method Summary collapse
- #call(topic, batch_size: config.outbox_publishing_batch_size) ⇒ Object
-
#initialize(config: Dionysus::Producer.configuration) ⇒ Producer
constructor
A new instance of Producer.
Constructor Details
#initialize(config: Dionysus::Producer.configuration) ⇒ Producer
Returns a new instance of Producer.
7 8 9 |
# File 'lib/dionysus/producer/outbox/producer.rb', line 7 def initialize(config: Dionysus::Producer.configuration) @config = config end |
Instance Method Details
#call(topic, batch_size: config.outbox_publishing_batch_size) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/dionysus/producer/outbox/producer.rb', line 11 def call(topic, batch_size: config.outbox_publishing_batch_size) outbox_model.fetch_publishable(batch_size, topic).to_a.tap do |records_to_publish| records_processor.call(records_to_publish) do |record| yield record if block_given? end end end |