Sha256: 142718334d5e6a472ccc0d4e2b01d64647a3a46f9cc11d498583bbba879923b3

Contents?: true

Size: 787 Bytes

Versions: 27

Compression:

Stored size: 787 Bytes

Contents

# frozen_string_literal: true

module Karafka
  module Contracts
    # Contract with validation rules for Karafka configuration details
    # @note There are many more configuration options inside of the
    #   Karafka::Setup::Config model, but we don't validate them here as they are
    #   validated per each route (topic + consumer_group) because they can be overwritten,
    #   so we validate all of that once all the routes are defined and ready
    class Config < Dry::Validation::Contract
      params do
        required(:client_id).filled(:str?, format?: Karafka::Contracts::TOPIC_REGEXP)
        required(:shutdown_timeout) { (int? & gt?(0)) }
        required(:consumer_mapper)
        required(:topic_mapper)

        optional(:backend).filled
      end
    end
  end
end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
karafka-1.4.15 lib/karafka/contracts/config.rb
karafka-1.4.14 lib/karafka/contracts/config.rb
karafka-1.4.13 lib/karafka/contracts/config.rb
karafka-1.4.12 lib/karafka/contracts/config.rb
karafka-1.4.11 lib/karafka/contracts/config.rb
karafka-1.4.10 lib/karafka/contracts/config.rb
karafka-1.4.9 lib/karafka/contracts/config.rb
karafka-1.4.8 lib/karafka/contracts/config.rb
karafka-1.4.7 lib/karafka/contracts/config.rb
karafka-1.4.6 lib/karafka/contracts/config.rb
karafka-1.4.5 lib/karafka/contracts/config.rb
karafka-1.4.4 lib/karafka/contracts/config.rb
karafka-1.4.3 lib/karafka/contracts/config.rb
karafka-1.4.2 lib/karafka/contracts/config.rb
karafka-1.4.1 lib/karafka/contracts/config.rb
karafka-1.4.0 lib/karafka/contracts/config.rb
karafka-1.4.0.rc2 lib/karafka/contracts/config.rb
karafka-1.4.0.rc1 lib/karafka/contracts/config.rb
karafka-1.3.7 lib/karafka/contracts/config.rb
karafka-1.3.6 lib/karafka/contracts/config.rb