31 lines
1.4 KiB
C#
31 lines
1.4 KiB
C#
using Microsoft.EntityFrameworkCore.Migrations;
|
|
|
|
namespace Tiku.Infrastructure.Persistence.Migrations;
|
|
|
|
internal static class MigrationBuilderTenantGuardExtensions
|
|
{
|
|
public static void EnsureTenantIsolationGuards(this MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.Sql(PostgreSqlTenantConstraintSql.DropTenantGuards);
|
|
migrationBuilder.Sql(PostgreSqlTenantConstraintSql.CreateTenantQuestionReferenceGuard);
|
|
migrationBuilder.Sql(PostgreSqlTenantConstraintSql.CreateTaxonomyParentGuard);
|
|
}
|
|
|
|
public static void DropTenantIsolationGuards(this MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.Sql(PostgreSqlTenantConstraintSql.DropTenantGuards);
|
|
}
|
|
|
|
public static void EnsureSaasCatalogGuards(this MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.Sql(PostgreSqlSaasCatalogConstraintSql.DropOfferingVersionImmutabilityGuards);
|
|
migrationBuilder.Sql(PostgreSqlSaasCatalogConstraintSql.CreateOfferingVersionImmutabilityGuards);
|
|
migrationBuilder.Sql(PostgreSqlSaasCatalogConstraintSql.CreateOfferingVersionChildrenImmutabilityGuards);
|
|
migrationBuilder.Sql(PostgreSqlSaasCatalogConstraintSql.CreateSubscriptionOfferingTypeGuards);
|
|
}
|
|
|
|
public static void DropSaasCatalogGuards(this MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.Sql(PostgreSqlSaasCatalogConstraintSql.DropOfferingVersionImmutabilityGuards);
|
|
}
|
|
} |