Class: Apartment::Elevators::Subdomain
- Defined in:
- lib/apartment/elevators/subdomain.rb
Overview
Tenant from subdomain. Uses PublicSuffix for international TLD handling.
Direct Known Subclasses
Instance Method Summary collapse
-
#initialize(app, excluded_subdomains: [], **_options) ⇒ Subdomain
constructor
A new instance of Subdomain.
- #parse_tenant_name(request) ⇒ Object
Methods inherited from Generic
Constructor Details
#initialize(app, excluded_subdomains: [], **_options) ⇒ Subdomain
Returns a new instance of Subdomain.
10 11 12 13 |
# File 'lib/apartment/elevators/subdomain.rb', line 10 def initialize(app, excluded_subdomains: [], **) super(app) @excluded_subdomains = Array(excluded_subdomains).map(&:to_s).freeze end |
Instance Method Details
#parse_tenant_name(request) ⇒ Object
15 16 17 18 19 20 21 22 |
# File 'lib/apartment/elevators/subdomain.rb', line 15 def parse_tenant_name(request) request_subdomain = subdomain(request.host) return nil if request_subdomain.blank? return nil if @excluded_subdomains.include?(request_subdomain) request_subdomain end |