class Hippo::API::TenantDomainRouter

Public Class Methods

new(app) click to toggle source
# File lib/hippo/api/tenant_domain_router.rb, line 4
def initialize(app)
    @app = app
end

Public Instance Methods

call(env) click to toggle source
# File lib/hippo/api/tenant_domain_router.rb, line 8
def call(env)
    domain_parts = env['SERVER_NAME'].split('.')
    if domain_parts.length == 3
        tenant = Hippo::Tenant.where(slug: domain_parts.first).first
        MultiTenant.with(tenant) do
            @app.call(env)
        end
    else
        @app.call(env)
    end
end