DVTenants class

Resolves a tenant from a request, and holds the tenant the current work is running for.

DV.currentTenant is an alias for currentTenant.

Constructors

DVTenants()
const

Properties

currentLocaleDefault → String?
The current tenant's default locale, or null.
no setter
currentTenant ↔ String
The tenant the current work is running for.
getter/setter pair
hashCode → int
The hash code for this object.
no setterinherited
isolation → DVTenantIsolation
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
source → DVTenantSource
no setter

Methods

adopt(Uri uri, {Map<String, String> headers = const {}}) → String
Resolves the tenant for uri and makes it current, returning what it resolved to. Falls back to defaultTenant when the request names none.
configure({DVTenantIsolation? isolation, DVTenantSource? source, String? headerName, String? queryParameterName, Set<String>? ignoredHostLabels, String? resolver(Uri uri, Map<String, String> headers)?}) → void
Configures resolution. resolver overrides source entirely, for hosts that map tenants some other way (a lookup table, a signed token).
localeDefaultFor(String tenant) → String?
tenant's default locale, or null when it has none.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
qualifierFor(String tenant, {String base = 'dartvel'}) → String?
The database or schema name for tenant under the configured isolation.
resolve(Uri uri, {Map<String, String> headers = const {}}) → String?
The tenant uri and headers identify, or null when they identify none.
toString() → String
A string representation of this object.
inherited
withTenant<R>(String tenant, R callback()) → R
Runs callback with tenant current for its entire execution.

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Properties

hasScope → bool
Whether a withTenant scope is carrying the tenant for this work.
no setter
ignoredHostLabels → Set<String>
Host labels that are never a tenant. www.example.com is the site, not a tenant called "www".
no setter

Static Methods

clearLocaleDefaults() → void
Forgets every tenant's default. Tests use this.
reset() → void
Restores the defaults. Intended for tests.
setLocaleDefault(String tenant, String locale) → void
Sets tenant's default locale.

Constants

defaultTenant → const String
The tenant used when nothing resolves one.