Browse Source

Add Object Extension feature.

pull/12084/head
maliming 5 years ago
parent
commit
e4733b300d
No known key found for this signature in database GPG Key ID: 96224957E51C89E
  1. 43
      modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo/Abp/ObjectExtending/OpenIddictModuleExtensionConfiguration.cs
  2. 17
      modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo/Abp/ObjectExtending/OpenIddictModuleExtensionConfigurationDictionaryExtensions.cs
  3. 17
      modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo/Abp/ObjectExtending/OpenIddictModuleExtensionConsts.cs
  4. 34
      modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/AbpOpenIddictDomainModule.cs

43
modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo/Abp/ObjectExtending/OpenIddictModuleExtensionConfiguration.cs

@ -0,0 +1,43 @@
using System;
using Volo.Abp.ObjectExtending.Modularity;
namespace Volo.Abp.ObjectExtending;
public class OpenIddictModuleExtensionConfiguration : ModuleExtensionConfiguration
{
public OpenIddictModuleExtensionConfiguration ConfigureApplication(
Action<EntityExtensionConfiguration> configureAction)
{
return this.ConfigureEntity(
OpenIddictModuleExtensionConsts.EntityNames.Application,
configureAction
);
}
public OpenIddictModuleExtensionConfiguration ConfigureAuthorization(
Action<EntityExtensionConfiguration> configureAction)
{
return this.ConfigureEntity(
OpenIddictModuleExtensionConsts.EntityNames.Authorization,
configureAction
);
}
public OpenIddictModuleExtensionConfiguration ConfigureScope(
Action<EntityExtensionConfiguration> configureAction)
{
return this.ConfigureEntity(
OpenIddictModuleExtensionConsts.EntityNames.Scope,
configureAction
);
}
public OpenIddictModuleExtensionConfiguration ConfigureToken(
Action<EntityExtensionConfiguration> configureAction)
{
return this.ConfigureEntity(
OpenIddictModuleExtensionConsts.EntityNames.Token,
configureAction
);
}
}

17
modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo/Abp/ObjectExtending/OpenIddictModuleExtensionConfigurationDictionaryExtensions.cs

@ -0,0 +1,17 @@
using System;
using Volo.Abp.ObjectExtending.Modularity;
namespace Volo.Abp.ObjectExtending;
public static class OpenIddictModuleExtensionConfigurationDictionaryExtensions
{
public static ModuleExtensionConfigurationDictionary ConfigureOpenIddict(
this ModuleExtensionConfigurationDictionary modules,
Action<OpenIddictModuleExtensionConfiguration> configureAction)
{
return modules.ConfigureModule(
OpenIddictModuleExtensionConsts.ModuleName,
configureAction
);
}
}

17
modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo/Abp/ObjectExtending/OpenIddictModuleExtensionConsts.cs

@ -0,0 +1,17 @@
namespace Volo.Abp.ObjectExtending;
public class OpenIddictModuleExtensionConsts
{
public const string ModuleName = "OpenIddict";
public static class EntityNames
{
public const string Application = "Application";
public const string Authorization = "Authorization";
public const string Scope = "Scope";
public const string Token = "Token";
}
}

34
modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/AbpOpenIddictDomainModule.cs

@ -11,6 +11,8 @@ using Volo.Abp.Domain;
using Volo.Abp.Guids; using Volo.Abp.Guids;
using Volo.Abp.Identity; using Volo.Abp.Identity;
using Volo.Abp.Modularity; using Volo.Abp.Modularity;
using Volo.Abp.ObjectExtending;
using Volo.Abp.ObjectExtending.Modularity;
using Volo.Abp.OpenIddict.Applications; using Volo.Abp.OpenIddict.Applications;
using Volo.Abp.OpenIddict.Authorizations; using Volo.Abp.OpenIddict.Authorizations;
using Volo.Abp.OpenIddict.Scopes; using Volo.Abp.OpenIddict.Scopes;
@ -30,6 +32,8 @@ namespace Volo.Abp.OpenIddict;
)] )]
public class AbpOpenIddictDomainModule : AbpModule public class AbpOpenIddictDomainModule : AbpModule
{ {
private static readonly OneTimeRunner OneTimeRunner = new OneTimeRunner();
public override void ConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context)
{ {
AddOpenIddict(context.Services); AddOpenIddict(context.Services);
@ -158,4 +162,34 @@ public class AbpOpenIddictDomainModule : AbpModule
services.ExecutePreConfiguredActions(openIddictBuilder); services.ExecutePreConfiguredActions(openIddictBuilder);
} }
public override void PostConfigureServices(ServiceConfigurationContext context)
{
OneTimeRunner.Run(() =>
{
ModuleExtensionConfigurationHelper.ApplyEntityConfigurationToEntity(
OpenIddictModuleExtensionConsts.ModuleName,
OpenIddictModuleExtensionConsts.EntityNames.Application,
typeof(OpenIddictApplication)
);
ModuleExtensionConfigurationHelper.ApplyEntityConfigurationToEntity(
OpenIddictModuleExtensionConsts.ModuleName,
OpenIddictModuleExtensionConsts.EntityNames.Authorization,
typeof(OpenIddictAuthorization)
);
ModuleExtensionConfigurationHelper.ApplyEntityConfigurationToEntity(
OpenIddictModuleExtensionConsts.ModuleName,
OpenIddictModuleExtensionConsts.EntityNames.Scope,
typeof(OpenIddictScope)
);
ModuleExtensionConfigurationHelper.ApplyEntityConfigurationToEntity(
OpenIddictModuleExtensionConsts.ModuleName,
OpenIddictModuleExtensionConsts.EntityNames.Token,
typeof(OpenIddictToken)
);
});
}
} }

Loading…
Cancel
Save