Files
tiku-backend.net/Tiku.Infrastructure/Assets/AssetManagementDependencies.cs
xiong 33375a38d7
Some checks failed
ci / release-gate (push) Has been cancelled
refactor(architecture): harden module boundaries
2026-08-04 12:10:36 +08:00

31 lines
1.6 KiB
C#

using Tiku.Application.Assets;
using Tiku.Application.Jobs;
using Tiku.Application.Security;
using Tiku.Application.Storage;
using Tiku.Application.Tenancy;
using Tiku.Infrastructure.Persistence;
namespace Tiku.Infrastructure.Assets;
internal sealed record AssetManagementDependencies(
IContentAssetPersistence ContentAssetPersistence,
IQuestionBankPersistence QuestionBankPersistence,
IObjectStorageService ObjectStorageService,
ITenantExternalProviderConfigService ProviderConfigService,
IFeatureAccessService FeatureAccessService,
IBackgroundJobQueue BackgroundJobService);
internal abstract partial class AssetManagementServiceBase(AssetManagementDependencies dependencies)
{
protected IContentAssetPersistence contentAssetPersistence { get; } = dependencies.ContentAssetPersistence;
protected IQuestionBankPersistence questionBankPersistence { get; } = dependencies.QuestionBankPersistence;
protected IObjectStorageService objectStorageService { get; } = dependencies.ObjectStorageService;
protected ITenantExternalProviderConfigService providerConfigService { get; } = dependencies.ProviderConfigService;
protected IFeatureAccessService featureAccessService { get; } = dependencies.FeatureAccessService;
protected IBackgroundJobQueue backgroundJobService { get; } = dependencies.BackgroundJobService;
protected const int DefaultLimit = 100;
protected const int MaxLimit = 500;
protected static readonly TimeSpan DefaultUploadTtl = TimeSpan.FromMinutes(15);
protected static readonly TimeSpan MaxUploadTtl = TimeSpan.FromHours(1);
}