40 lines
1.6 KiB
C#
40 lines
1.6 KiB
C#
using JSMR.Application.Circles.Queries.GetCreators;
|
|
using JSMR.Application.Circles.Queries.GetTags;
|
|
using JSMR.Application.Circles.Queries.Search;
|
|
using JSMR.Application.Common.Caching;
|
|
using JSMR.Application.Creators.Ports;
|
|
using JSMR.Application.Creators.Queries.Search.Ports;
|
|
using JSMR.Application.Tags.Ports;
|
|
using JSMR.Application.Tags.Queries.Search.Ports;
|
|
using JSMR.Application.VoiceWorks.Queries.Search;
|
|
using JSMR.Infrastructure.Caching;
|
|
using JSMR.Infrastructure.Data.Repositories.Circles;
|
|
using JSMR.Infrastructure.Data.Repositories.Creators;
|
|
using JSMR.Infrastructure.Data.Repositories.Tags;
|
|
using JSMR.Infrastructure.Data.Repositories.VoiceWorks;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
|
|
namespace JSMR.Infrastructure.DI;
|
|
|
|
public static class InfrastructureServiceCollectionExtensions
|
|
{
|
|
public static IServiceCollection AddInfrastructure(this IServiceCollection services)
|
|
{
|
|
services.AddScoped<ICircleSearchProvider, CircleSearchProvider>();
|
|
services.AddScoped<ICircleTagsProvider, CircleTagsProvider>();
|
|
services.AddScoped<ICircleCreatorsProvider, CircleCreatorsProvider>();
|
|
|
|
services.AddScoped<IVoiceWorkSearchProvider, VoiceWorkSearchProvider>();
|
|
services.AddScoped<IVoiceWorkFullTextSearch, MySqlVoiceWorkFullTextSearch>();
|
|
|
|
services.AddScoped<ITagSearchProvider, TagSearchProvider>();
|
|
services.AddScoped<ITagWriter, TagWriter>();
|
|
|
|
services.AddScoped<ICreatorSearchProvider, CreatorSearchProvider>();
|
|
services.AddScoped<ICreatorWriter, CreatorWriter>();
|
|
|
|
services.AddSingleton<ICache, MemoryCacheAdapter>();
|
|
|
|
return services;
|
|
}
|
|
} |