Table of Contents

Class HeaderTenantResolver

Namespace
Compendium.Multitenancy
Assembly
Compendium.Multitenancy.dll

A tenant resolver that identifies tenants based on HTTP headers. Looks for tenant identifier in a specified header and resolves the tenant from storage.

public sealed class HeaderTenantResolver : ITenantResolver
Inheritance
HeaderTenantResolver
Implements
Inherited Members

Constructors

HeaderTenantResolver(ITenantStore, HeaderTenantResolverOptions, ILogger<HeaderTenantResolver>)

Initializes a new instance of the HeaderTenantResolver class.

public HeaderTenantResolver(ITenantStore tenantStore, HeaderTenantResolverOptions options, ILogger<HeaderTenantResolver> logger)

Parameters

tenantStore ITenantStore

The tenant store for retrieving tenant information.

options HeaderTenantResolverOptions

The configuration options for header-based resolution.

logger ILogger<HeaderTenantResolver>

The logger instance.

Exceptions

ArgumentNullException

Thrown when any parameter is null.

Methods

ResolveTenantAsync(TenantResolutionContext, CancellationToken)

Resolves tenant information from HTTP headers.

public Task<Result<TenantInfo?>> ResolveTenantAsync(TenantResolutionContext context, CancellationToken cancellationToken = default)

Parameters

context TenantResolutionContext

The tenant resolution context containing request information.

cancellationToken CancellationToken

The cancellation token.

Returns

Task<Result<TenantInfo>>

A task representing the asynchronous operation with the resolved tenant or null if not found.