Class: Deimos::Backends::Db
- Inherits:
-
PublishBackend
- Object
- PublishBackend
- Deimos::Backends::Db
- Defined in:
- lib/deimos/backends/db.rb
Overview
Backend which saves messages to the database instead of immediately sending them.
Class Method Summary collapse
Methods inherited from PublishBackend
Class Method Details
.execute(producer_class:, messages:) ⇒ Object
:nodoc:
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/deimos/backends/db.rb', line 12 def execute(producer_class:, messages:) records = .map do |m| = Deimos::KafkaMessage.new( message: m.encoded_payload ? m.encoded_payload.to_s.b : nil, topic: m.topic, partition_key: m.partition_key || m.key ) .key = m.encoded_key.to_s.b unless producer_class.config[:no_keys] end Deimos::KafkaMessage.import(records) end |