module Dry::Schema::Messages

An API for configuring message backends

@api private

Constants

BACKENDS

Public Instance Methods

setup(config) click to toggle source
# File lib/dry/schema/messages.rb, line 16
       def setup(config)
  backend_class = BACKENDS.fetch(config.backend) do
    raise "+#{config.backend}+ is not a valid messages identifier"
  end

  namespace = config.namespace
  options = config.to_h.select { |k, _| Abstract.settings.include?(k) }

  messages = Messages.const_get(backend_class).build(options)

  return messages.namespaced(namespace) if namespace

  messages
end