using Microsoft.Extensions.DependencyInjection; using Tiku.Application.Assets; using Tiku.Application.Catalog; using Tiku.Application.Content; using Tiku.Application.Jobs; using Tiku.Application.Profile; using Tiku.Application.QuestionBanks; using Tiku.Application.Scoreline; using Tiku.Application.Storage; using Tiku.Application.StudyContent; using Tiku.Infrastructure.Assets; using Tiku.Infrastructure.Catalog; using Tiku.Infrastructure.Content; using Tiku.Infrastructure.Content.Exports; using Tiku.Infrastructure.Content.Imports; using Tiku.Infrastructure.Assets.Security; using Tiku.Infrastructure.Profile; using Tiku.Infrastructure.QuestionBanks; using Tiku.Infrastructure.Scoreline; using Tiku.Infrastructure.Storage; using Tiku.Infrastructure.StudyContent; namespace Tiku.Infrastructure; internal static class ContentModule { internal static IServiceCollection AddContentModule(this IServiceCollection services) { services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddOptions(); services.AddScoped(); services.AddOptions() .Validate(AliyunOssOptions.BeValid, "Aliyun OSS presign default expiration must be positive."); services.AddOptions() .Validate(ObjectStorageOptions.BeValid, "Storage options must include a default provider, default bucket and positive max upload bytes."); services.AddSingleton(); return services; } }