Class: TenantRealm::Cache::KredisCache

Inherits:
BaseCache
  • Object
show all
Defined in:
lib/tenant_realm/cache/kredis_cache.rb

Class Method Summary collapse

Class Method Details

.cache_tenant(tenant:) ⇒ Object



25
26
27
28
29
30
31
32
33
34
# File 'lib/tenant_realm/cache/kredis_cache.rb', line 25

def cache_tenant(tenant:)
  return tenant if tenant.blank?

  tenant_unique_keys(tenant).each do |key|
    cached_tenant = tenant_kredis(key)
    cached_tenant.value = tenant
  end

  tenant
end

.cache_tenants(tenants:) ⇒ Object



12
13
14
15
16
17
18
# File 'lib/tenant_realm/cache/kredis_cache.rb', line 12

def cache_tenants(tenants:)
  return if tenants.blank?

  cached_tenants = tenants_kredis
  cached_tenants.value = tenants
  tenants
end

.tenant(identifier:) ⇒ Object



36
37
38
39
# File 'lib/tenant_realm/cache/kredis_cache.rb', line 36

def tenant(identifier:)
  cached_tenant = tenant_kredis(identifier)
  cached_tenant.value&.deep_symbolize_keys
end

.tenantsObject



20
21
22
23
# File 'lib/tenant_realm/cache/kredis_cache.rb', line 20

def tenants
  cached_tenants = tenants_kredis
  cached_tenants.value&.map(&:deep_symbolize_keys) || []
end