Browse Source

PermissionManagement db table prefix revision

pull/1904/head
Halil İbrahim Kalkan 7 years ago
parent
commit
4170a36764
  1. 11
      modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo/Abp/PermissionManagement/AbpPermissionManagementConsts.cs
  2. 13
      modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo/Abp/PermissionManagement/AbpPermissionManagementDbProperties.cs
  3. 18
      modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo/Abp/PermissionManagement/EntityFrameworkCore/AbpPermissionManagementDbContextModelBuilderExtensions.cs
  4. 18
      modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo/Abp/PermissionManagement/EntityFrameworkCore/AbpPermissionManagementModelBuilderConfigurationOptions.cs
  5. 2
      modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo/Abp/PermissionManagement/EntityFrameworkCore/IPermissionManagementDbContext.cs
  6. 8
      modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo/Abp/PermissionManagement/EntityFrameworkCore/PermissionManagementDbContext.cs
  7. 4
      modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/AbpPermissionManagementMongoDbContextExtensions.cs
  8. 2
      modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/IPermissionManagementMongoDbContext.cs
  9. 9
      modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/PermissionManagementMongoDbContext.cs
  10. 3
      modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/PermissionManagementMongoModelBuilderConfigurationOptions.cs

11
modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo/Abp/PermissionManagement/AbpPermissionManagementConsts.cs

@ -1,11 +0,0 @@
namespace Volo.Abp.PermissionManagement
{
public static class AbpPermissionManagementConsts
{
public const string DefaultDbTablePrefix = "Abp";
public const string DefaultDbSchema = null;
public const string ConnectionStringName = "AbpPermissionManagement";
}
}

13
modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo/Abp/PermissionManagement/AbpPermissionManagementDbProperties.cs

@ -0,0 +1,13 @@
using Volo.Abp.Data;
namespace Volo.Abp.PermissionManagement
{
public static class AbpPermissionManagementDbProperties
{
public static string DbTablePrefix { get; } = AbpCommonDbProperties.DbTablePrefix;
public static string DbSchema { get; } = AbpCommonDbProperties.DbSchema;
public const string ConnectionStringName = "AbpPermissionManagement";
}
}

18
modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo/Abp/PermissionManagement/EntityFrameworkCore/AbpPermissionManagementDbContextModelBuilderExtensions.cs

@ -1,4 +1,5 @@
using JetBrains.Annotations; using System;
using JetBrains.Annotations;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
namespace Volo.Abp.PermissionManagement.EntityFrameworkCore namespace Volo.Abp.PermissionManagement.EntityFrameworkCore
@ -7,19 +8,20 @@ namespace Volo.Abp.PermissionManagement.EntityFrameworkCore
{ {
public static void ConfigurePermissionManagement( public static void ConfigurePermissionManagement(
[NotNull] this ModelBuilder builder, [NotNull] this ModelBuilder builder,
[CanBeNull] string tablePrefix = AbpPermissionManagementConsts.DefaultDbTablePrefix, [CanBeNull] Action<AbpPermissionManagementModelBuilderConfigurationOptions> optionsAction = null)
[CanBeNull] string schema = AbpPermissionManagementConsts.DefaultDbSchema)
{ {
Check.NotNull(builder, nameof(builder)); Check.NotNull(builder, nameof(builder));
if (tablePrefix == null) var options = new AbpPermissionManagementModelBuilderConfigurationOptions(
{ AbpPermissionManagementDbProperties.DbTablePrefix,
tablePrefix = ""; AbpPermissionManagementDbProperties.DbSchema
} );
optionsAction?.Invoke(options);
builder.Entity<PermissionGrant>(b => builder.Entity<PermissionGrant>(b =>
{ {
b.ToTable(tablePrefix + "PermissionGrants", schema); b.ToTable(options.TablePrefix + "PermissionGrants", options.Schema);
b.Property(x => x.Name).HasMaxLength(PermissionGrantConsts.MaxNameLength).IsRequired(); b.Property(x => x.Name).HasMaxLength(PermissionGrantConsts.MaxNameLength).IsRequired();
b.Property(x => x.ProviderName).HasMaxLength(PermissionGrantConsts.MaxProviderNameLength).IsRequired(); b.Property(x => x.ProviderName).HasMaxLength(PermissionGrantConsts.MaxProviderNameLength).IsRequired();

18
modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo/Abp/PermissionManagement/EntityFrameworkCore/AbpPermissionManagementModelBuilderConfigurationOptions.cs

@ -0,0 +1,18 @@
using JetBrains.Annotations;
using Volo.Abp.EntityFrameworkCore.Modeling;
namespace Volo.Abp.PermissionManagement.EntityFrameworkCore
{
public class AbpPermissionManagementModelBuilderConfigurationOptions : ModelBuilderConfigurationOptions
{
public AbpPermissionManagementModelBuilderConfigurationOptions(
[NotNull] string tablePrefix,
[CanBeNull] string schema)
: base(
tablePrefix,
schema)
{
}
}
}

2
modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo/Abp/PermissionManagement/EntityFrameworkCore/IPermissionManagementDbContext.cs

@ -4,7 +4,7 @@ using Volo.Abp.EntityFrameworkCore;
namespace Volo.Abp.PermissionManagement.EntityFrameworkCore namespace Volo.Abp.PermissionManagement.EntityFrameworkCore
{ {
[ConnectionStringName(AbpPermissionManagementConsts.ConnectionStringName)] [ConnectionStringName(AbpPermissionManagementDbProperties.ConnectionStringName)]
public interface IPermissionManagementDbContext : IEfCoreDbContext public interface IPermissionManagementDbContext : IEfCoreDbContext
{ {
DbSet<PermissionGrant> PermissionGrants { get; set; } DbSet<PermissionGrant> PermissionGrants { get; set; }

8
modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo/Abp/PermissionManagement/EntityFrameworkCore/PermissionManagementDbContext.cs

@ -4,13 +4,9 @@ using Volo.Abp.EntityFrameworkCore;
namespace Volo.Abp.PermissionManagement.EntityFrameworkCore namespace Volo.Abp.PermissionManagement.EntityFrameworkCore
{ {
[ConnectionStringName(AbpPermissionManagementConsts.ConnectionStringName)] [ConnectionStringName(AbpPermissionManagementDbProperties.ConnectionStringName)]
public class PermissionManagementDbContext : AbpDbContext<PermissionManagementDbContext>, IPermissionManagementDbContext public class PermissionManagementDbContext : AbpDbContext<PermissionManagementDbContext>, IPermissionManagementDbContext
{ {
public static string TablePrefix { get; set; } = AbpPermissionManagementConsts.DefaultDbTablePrefix;
public static string Schema { get; set; } = AbpPermissionManagementConsts.DefaultDbSchema;
public DbSet<PermissionGrant> PermissionGrants { get; set; } public DbSet<PermissionGrant> PermissionGrants { get; set; }
public PermissionManagementDbContext(DbContextOptions<PermissionManagementDbContext> options) public PermissionManagementDbContext(DbContextOptions<PermissionManagementDbContext> options)
@ -23,7 +19,7 @@ namespace Volo.Abp.PermissionManagement.EntityFrameworkCore
{ {
base.OnModelCreating(builder); base.OnModelCreating(builder);
builder.ConfigurePermissionManagement(TablePrefix, Schema); builder.ConfigurePermissionManagement();
} }
} }
} }

4
modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/AbpPermissionManagementMongoDbContextExtensions.cs

@ -11,7 +11,9 @@ namespace Volo.Abp.PermissionManagement.MongoDB
{ {
Check.NotNull(builder, nameof(builder)); Check.NotNull(builder, nameof(builder));
var options = new PermissionManagementMongoModelBuilderConfigurationOptions(); var options = new PermissionManagementMongoModelBuilderConfigurationOptions(
AbpPermissionManagementDbProperties.DbTablePrefix
);
optionsAction?.Invoke(options); optionsAction?.Invoke(options);

2
modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/IPermissionManagementMongoDbContext.cs

@ -4,7 +4,7 @@ using Volo.Abp.MongoDB;
namespace Volo.Abp.PermissionManagement.MongoDB namespace Volo.Abp.PermissionManagement.MongoDB
{ {
[ConnectionStringName(AbpPermissionManagementConsts.ConnectionStringName)] [ConnectionStringName(AbpPermissionManagementDbProperties.ConnectionStringName)]
public interface IPermissionManagementMongoDbContext : IAbpMongoDbContext public interface IPermissionManagementMongoDbContext : IAbpMongoDbContext
{ {
IMongoCollection<PermissionGrant> PermissionGrants { get; } IMongoCollection<PermissionGrant> PermissionGrants { get; }

9
modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/PermissionManagementMongoDbContext.cs

@ -4,21 +4,16 @@ using Volo.Abp.MongoDB;
namespace Volo.Abp.PermissionManagement.MongoDB namespace Volo.Abp.PermissionManagement.MongoDB
{ {
[ConnectionStringName(AbpPermissionManagementConsts.ConnectionStringName)] [ConnectionStringName(AbpPermissionManagementDbProperties.ConnectionStringName)]
public class PermissionManagementMongoDbContext : AbpMongoDbContext, IPermissionManagementMongoDbContext public class PermissionManagementMongoDbContext : AbpMongoDbContext, IPermissionManagementMongoDbContext
{ {
public static string CollectionPrefix { get; set; } = AbpPermissionManagementConsts.DefaultDbTablePrefix;
public IMongoCollection<PermissionGrant> PermissionGrants => Collection<PermissionGrant>(); public IMongoCollection<PermissionGrant> PermissionGrants => Collection<PermissionGrant>();
protected override void CreateModel(IMongoModelBuilder modelBuilder) protected override void CreateModel(IMongoModelBuilder modelBuilder)
{ {
base.CreateModel(modelBuilder); base.CreateModel(modelBuilder);
modelBuilder.ConfigurePermissionManagement(options => modelBuilder.ConfigurePermissionManagement();
{
options.CollectionPrefix = CollectionPrefix;
});
} }
} }
} }

3
modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/PermissionManagementMongoModelBuilderConfigurationOptions.cs

@ -5,7 +5,8 @@ namespace Volo.Abp.PermissionManagement.MongoDB
{ {
public class PermissionManagementMongoModelBuilderConfigurationOptions : MongoModelBuilderConfigurationOptions public class PermissionManagementMongoModelBuilderConfigurationOptions : MongoModelBuilderConfigurationOptions
{ {
public PermissionManagementMongoModelBuilderConfigurationOptions([NotNull] string tablePrefix = AbpPermissionManagementConsts.DefaultDbTablePrefix) public PermissionManagementMongoModelBuilderConfigurationOptions(
[NotNull] string tablePrefix = "")
: base(tablePrefix) : base(tablePrefix)
{ {
} }

Loading…
Cancel
Save