Interface IPlatformAdminRepository
- Namespace
- KadicAuth.Application.PlatformAdmins.Abstractions
- Assembly
- KadicAuth.Application.dll
Persistence abstraction for PlatformAdmin membership. Lives here (Application) so handlers can depend on it without pulling in EF Core.
public interface IPlatformAdminRepository
Methods
AddAsync(PlatformAdmin, CancellationToken)
Task AddAsync(PlatformAdmin platformAdmin, CancellationToken cancellationToken = default)
Parameters
platformAdminPlatformAdmincancellationTokenCancellationToken
Returns
- Task
AddAuditLogAsync(PlatformAdminAuditLogEntry, CancellationToken)
Task AddAuditLogAsync(PlatformAdminAuditLogEntry entry, CancellationToken cancellationToken = default)
Parameters
entryPlatformAdminAuditLogEntrycancellationTokenCancellationToken
Returns
- Task
CountActiveAsync(CancellationToken)
Count of currently-active platform admins. Used by the controller to prevent a platform-admin from revoking themselves when they are the last one standing.
Task<int> CountActiveAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- Task<int>
GetByUserIdAsync(Guid, CancellationToken)
Task<PlatformAdmin?> GetByUserIdAsync(Guid userId, CancellationToken cancellationToken = default)
Parameters
userIdGuidcancellationTokenCancellationToken
Returns
- Task<PlatformAdmin>
IsActiveAsync(Guid, CancellationToken)
Hot-path lookup: is the given user currently an ACTIVE platform admin? Must be a short, indexed query — it is invoked on every cross-tenant check in the patched handlers.
Task<bool> IsActiveAsync(Guid userId, CancellationToken cancellationToken = default)
Parameters
userIdGuidcancellationTokenCancellationToken
Returns
- Task<bool>
ListAsync(CancellationToken)
Task<IReadOnlyList<PlatformAdminDto>> ListAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- Task<IReadOnlyList<PlatformAdminDto>>
SaveChangesAsync(CancellationToken)
Task SaveChangesAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- Task
UpdateAsync(PlatformAdmin, CancellationToken)
Task UpdateAsync(PlatformAdmin platformAdmin, CancellationToken cancellationToken = default)
Parameters
platformAdminPlatformAdmincancellationTokenCancellationToken
Returns
- Task