Class: PgRls::Middleware::Sidekiq::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/pg_rls/middleware/sidekiq/client.rb

Overview

Set PgRls Policies

Instance Method Summary collapse

Instance Method Details

#call(_job_class, msg, _queue, _redis_pool) ⇒ Object



9
10
11
12
# File 'lib/pg_rls/middleware/sidekiq/client.rb', line 9

def call(_job_class, msg, _queue, _redis_pool)
  load_tenant_attribute!(msg)
  yield
end

#load_tenant_attribute!(msg) ⇒ Object



14
15
16
17
18
19
20
21
# File 'lib/pg_rls/middleware/sidekiq/client.rb', line 14

def load_tenant_attribute!(msg)
  if PgRls.admin_connection?
    msg['admin'] = true
  else
    tenant = PgRls::Tenant.fetch!
    msg['pg_rls'] = tenant.id
  end
end