mirror of
https://github.com/Cleanuparr/Cleanuparr.git
synced 2026-09-16 23:44:08 -04:00
32 lines
991 B
C#
32 lines
991 B
C#
using Cleanuparr.Domain.Enums;
|
|
using Cleanuparr.Shared.Enums;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Infrastructure;
|
|
|
|
namespace Cleanuparr.Persistence.Providers;
|
|
|
|
public interface IDatabaseProvider
|
|
{
|
|
DatabaseProvider Kind { get; }
|
|
|
|
void ConfigureContext(DbContextOptionsBuilder builder, DbContextKind kind);
|
|
|
|
string? GetSchema(DbContextKind kind);
|
|
|
|
string QualifyTable(string tableName, DbContextKind kind);
|
|
|
|
void ConfigureConventions(ModelConfigurationBuilder builder);
|
|
|
|
string GetUnresolvedEventFilter();
|
|
|
|
Task OnPostMigrateAsync(DatabaseFacade database, DbContextKind kind, CancellationToken cancellationToken);
|
|
|
|
Task PrepareBulkWriteAsync(DatabaseFacade database, CancellationToken cancellationToken);
|
|
|
|
Task CheckpointAsync(DatabaseFacade database, CancellationToken cancellationToken);
|
|
|
|
string GetTimelineBucketExpr(TimelineBucketSize size);
|
|
|
|
bool IsUniqueConstraintViolation(DbUpdateException exception);
|
|
}
|