Module: Karafka::Extensions::ParamsBuilder

Defined in:
lib/karafka/extensions/params_builder.rb

Overview

Extension for rebuilding params from a hash

Instance Method Summary collapse

Instance Method Details

#from_hash(hash, topic) ⇒ Karafka::Params::Params

Builds params from a hash

Parameters:

  • hash (Hash)

    hash with params details

  • topic (Karafka::Routing::Topic)

    topic for which we build the params

Returns:

  • (Karafka::Params::Params)

    built params



11
12
13
14
15
16
17
18
19
20
21
# File 'lib/karafka/extensions/params_builder.rb', line 11

def from_hash(hash, topic)
   = Karafka::Params::Metadata.new(
    **hash
      .fetch('metadata')
      .merge('deserializer' => topic.deserializer)
      .transform_keys(&:to_sym)
  ).freeze

  Karafka::Params::Params
    .new(hash.fetch('raw_payload'), )
end