Files
tiku-backend.net/Tiku.Infrastructure/TenantAdmin/Foundation/TenantAdminFoundation.cs

53 lines
3.0 KiB
C#

using Tiku.Application.Auth;
using Tiku.Application.Notifications;
using Tiku.Application.Learning;
using Tiku.Application.Security;
using Tiku.Application.Tenancy;
using Tiku.Infrastructure.Persistence;
namespace Tiku.Infrastructure.TenantAdmin;
internal sealed record TenantAdminServiceDependencies(
IIdentityPersistence IdentityPersistence,
ITenancyPersistence TenancyPersistence,
ITenantAdministrationPersistence TenantAdministrationPersistence,
ICatalogPersistence CatalogPersistence,
ILearningPersistence LearningPersistence,
ILearningAccessPersistence LearningAccessPersistence,
ILearningAccessService LearningAccessService,
ICommercePersistence CommercePersistence,
IPointsPersistence PointsPersistence,
IJobsOperationsPersistence JobsOperationsPersistence,
ITenantExternalProviderConfigService ProviderConfigService,
INotificationProvider NotificationProvider,
ICurrentAccessContext CurrentAccessContext,
IAuthSessionStore SessionStore,
IFeatureAccessService FeatureAccessService,
IAuthorizationStateInvalidator AuthorizationStateInvalidator);
internal abstract partial class TenantAdminServiceBase(TenantAdminServiceDependencies dependencies)
{
protected IIdentityPersistence identityPersistence { get; } = dependencies.IdentityPersistence;
protected ITenancyPersistence tenancyPersistence { get; } = dependencies.TenancyPersistence;
protected ITenantAdministrationPersistence tenantAdministrationPersistence { get; } =
dependencies.TenantAdministrationPersistence;
protected ICatalogPersistence catalogPersistence { get; } = dependencies.CatalogPersistence;
protected ILearningPersistence learningPersistence { get; } = dependencies.LearningPersistence;
protected ILearningAccessPersistence learningAccessPersistence { get; } = dependencies.LearningAccessPersistence;
protected ILearningAccessService learningAccessService { get; } = dependencies.LearningAccessService;
protected ICommercePersistence commercePersistence { get; } = dependencies.CommercePersistence;
protected IPointsPersistence pointsPersistence { get; } = dependencies.PointsPersistence;
protected IJobsOperationsPersistence jobsOperationsPersistence { get; } = dependencies.JobsOperationsPersistence;
protected IModulePersistence unitOfWork { get; } = dependencies.TenantAdministrationPersistence;
protected ITenantExternalProviderConfigService providerConfigService { get; } = dependencies.ProviderConfigService;
protected INotificationProvider notificationProvider { get; } = dependencies.NotificationProvider;
protected ICurrentAccessContext currentAccessContext { get; } = dependencies.CurrentAccessContext;
protected IAuthSessionStore sessionStore { get; } = dependencies.SessionStore;
protected IFeatureAccessService featureAccessService { get; } = dependencies.FeatureAccessService;
protected IAuthorizationStateInvalidator authorizationStateInvalidator { get; } =
dependencies.AuthorizationStateInvalidator;
}