Namespace Cratis.Arc.Tenancy

Classes

BaseDomainIsNotADomainName

The exception that is thrown when subdomain tenancy is configured with a base domain that cannot identify tenants.

ClaimTenantIdResolver

Represents an implementation of ITenantIdResolver that resolves the tenant ID from a claim in the authenticated user.

Constants

Holds constants related to tenant id.

CurrentTenantIdIsNotSet

The exception that is thrown when the current tenant ID is not set.

DevelopmentTenantIdResolver

Represents an implementation of ITenantIdResolver that resolves to a fixed tenant ID for development purposes.

ExplicitTenantScopeRequiresArcAccessor

The exception that is thrown when an explicit tenant scope is requested with a custom tenant ID accessor that cannot honor it.

FixedTenantIdResolver

Represents an implementation of ITenantIdResolver that resolves every request to one configured tenant ID.

HeaderTenantIdResolver

Represents an implementation of ITenantIdResolver that resolves the tenant ID from an HTTP header.

QueryTenantIdResolver

Represents an implementation of ITenantIdResolver that resolves the tenant ID from a query string parameter.

SubdomainTenantIdResolver

Represents an implementation of ITenantIdResolver that resolves the tenant ID from the request subdomain, with the configured HTTP header as fallback.

TenancyOptions

Represents the options for tenancy.

TenancyOptionsExtensions

Extension methods for configuring tenancy in Arc.

TenancyOptionsValidator

Represents an implementation of IValidateOptions<TOptions> that refuses a tenancy configuration no request could resolve a tenant from.

Tenant

Represents a tenant for development tooling.

TenantId

Represents the concept of a tenant identifier.

TenantIdAccessor

Represents the current tenant accessor and explicit ITenantScope.

TenantName

Represents the concept of a tenant name.

Interfaces

ICanProvideTenants

Defines a development provider for tenants.

ITenantIdAccessor

Defines a system that can access the current TenantId.

ITenantIdResolver

Defines a system that can resolve the TenantId from the current context.

ITenantScope

Defines an explicit tenant boundary for the current asynchronous execution flow.

Enums

TenantResolverType

Represents the different types of tenant ID resolvers.