Table of Contents

Class TenantSuperAdminRepository

Namespace
KadicAuth.Infrastructure.Repositories
Assembly
KadicAuth.Infrastructure.dll
public sealed class TenantSuperAdminRepository : ITenantSuperAdminRepository
Inheritance
object
TenantSuperAdminRepository
Implements

Constructors

TenantSuperAdminRepository(AuthDbContext)

public TenantSuperAdminRepository(AuthDbContext context)

Parameters

context AuthDbContext

Methods

AddAsync(TenantSuperAdmin, CancellationToken)

public Task AddAsync(TenantSuperAdmin entity, CancellationToken cancellationToken = default)

Parameters

entity TenantSuperAdmin
cancellationToken CancellationToken

Returns

Task

AddAuditLogAsync(TenantSuperAdminAuditLogEntry, CancellationToken)

public Task AddAuditLogAsync(TenantSuperAdminAuditLogEntry entry, CancellationToken cancellationToken = default)

Parameters

entry TenantSuperAdminAuditLogEntry
cancellationToken CancellationToken

Returns

Task

CountActiveInTenantAsync(Guid, CancellationToken)

Count of currently-active tenant super admins within the given tenant. Used to prevent revoking the last active super admin.

public Task<int> CountActiveInTenantAsync(Guid tenantId, CancellationToken cancellationToken = default)

Parameters

tenantId Guid
cancellationToken CancellationToken

Returns

Task<int>

GetByUserAndTenantAsync(Guid, Guid, CancellationToken)

public Task<TenantSuperAdmin?> GetByUserAndTenantAsync(Guid userId, Guid tenantId, CancellationToken cancellationToken = default)

Parameters

userId Guid
tenantId Guid
cancellationToken CancellationToken

Returns

Task<TenantSuperAdmin>

IsActiveAsync(Guid, Guid, CancellationToken)

Hot-path lookup: is the given user currently an ACTIVE tenant super admin within the specified tenant? Must be a short, indexed query.

public Task<bool> IsActiveAsync(Guid userId, Guid tenantId, CancellationToken cancellationToken = default)

Parameters

userId Guid
tenantId Guid
cancellationToken CancellationToken

Returns

Task<bool>

ListAsync(Guid, CancellationToken)

public Task<IReadOnlyList<TenantSuperAdminDto>> ListAsync(Guid tenantId, CancellationToken cancellationToken = default)

Parameters

tenantId Guid
cancellationToken CancellationToken

Returns

Task<IReadOnlyList<TenantSuperAdminDto>>

SaveChangesAsync(CancellationToken)

public Task SaveChangesAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

Returns

Task

UpdateAsync(TenantSuperAdmin, CancellationToken)

public Task UpdateAsync(TenantSuperAdmin entity, CancellationToken cancellationToken = default)

Parameters

entity TenantSuperAdmin
cancellationToken CancellationToken

Returns

Task