class Ekylibre::MultiTenancy::Middleware::SidekiqMiddleware::ContainerAwareServerMiddleware
Server Sidekiq middleware switching to the correct tenant (if any) based on the job context
Public Instance Methods
call(worker_class, item, queue) { || ... }
click to toggle source
# File lib/ekylibre/multi_tenancy/middleware/sidekiq_middleware/container_aware_server_middleware.rb, line 10 def call(worker_class, item, queue) tenant = item.fetch('tenant', nil) container = item.fetch('container').dup PluginSystem::GlobalContainer.replace_with(container) do item['container'] = container if tenant.nil? yield else container .get(TenantSwitcher) .switch(tenant) { yield } end end end