class Karafka::Setup::Configurators::WaterDrop
Class responsible for setting up WaterDrop configuration
def self.setup(config)
- Note: - This will also inject Karafka monitor as a default monitor into WaterDrop,
Parameters:
-
config
(Karafka::Setup::Config
) -- Config we can user to setup things
def self.setup(config) ::WaterDrop.setup do |water_config| water_config.deliver = true config.to_h.reject { |k, _v| k == :kafka }.each do |k, v| key_assignment = :"#{k}=" next unless water_config.respond_to?(key_assignment) water_config.public_send(key_assignment, v) end config.kafka.to_h.each do |k, v| key_assignment = :"#{k}=" next unless water_config.kafka.respond_to?(key_assignment) water_config.kafka.public_send(key_assignment, v) end end end