Sha256: 368d965a6cbdf28424b1dec228aa96f572e03f7fabaafdb14b66fd200a4c9be5

Contents?: true

Size: 826 Bytes

Versions: 13

Compression:

Stored size: 826 Bytes

Contents

module Sidekiq::Middleware::I18n
  # Get the current locale and store it in the message
  # to be sent to Sidekiq.
  class Client
    def call(worker_class, msg, queue)
      msg['locale'] = I18n.locale
      yield
    end
  end

  # Pull the msg locale out and set the current thread to use it.
  class Server
    def call(worker, msg, queue)
      I18n.locale = msg['locale'] || I18n.default_locale
      yield
    ensure
      I18n.locale = nil
    end
  end
end

Sidekiq.configure_client do |config|
  config.client_middleware do |chain|
    chain.add Sidekiq::Middleware::I18n::Client
  end
end

Sidekiq.configure_server do |config|
  config.client_middleware do |chain|
    chain.add Sidekiq::Middleware::I18n::Client
  end
  config.server_middleware do |chain|
    chain.add Sidekiq::Middleware::I18n::Server
  end
end

Version data entries

13 entries across 13 versions & 2 rubygems

Version Path
sidekiq-2.12.4 lib/sidekiq/middleware/i18n.rb
sidekiq-2.12.3 lib/sidekiq/middleware/i18n.rb
sidekiq-2.12.1 lib/sidekiq/middleware/i18n.rb
sidekiq-2.12.0 lib/sidekiq/middleware/i18n.rb
sidekiq-statsd-0.1.1 vendor/ruby/1.9.1/gems/sidekiq-2.11.2/lib/sidekiq/middleware/i18n.rb
sidekiq-statsd-0.1.0 vendor/ruby/1.9.1/gems/sidekiq-2.11.2/lib/sidekiq/middleware/i18n.rb
sidekiq-2.11.2 lib/sidekiq/middleware/i18n.rb
sidekiq-2.11.1 lib/sidekiq/middleware/i18n.rb
sidekiq-2.11.0 lib/sidekiq/middleware/i18n.rb
sidekiq-2.10.1 lib/sidekiq/middleware/i18n.rb
sidekiq-2.10.0 lib/sidekiq/middleware/i18n.rb
sidekiq-2.9.0 lib/sidekiq/middleware/i18n.rb
sidekiq-2.8.0 lib/sidekiq/middleware/i18n.rb