131 lines
7.1 KiB
C#
131 lines
7.1 KiB
C#
using Core.Thalos.Application.UseCases.Modules;
|
|
using Core.Thalos.Application.UseCases.Modules.Adapter;
|
|
using Core.Thalos.Application.UseCases.Modules.Input;
|
|
using Core.Thalos.Application.UseCases.Modules.Ports;
|
|
using Core.Thalos.Application.UseCases.Modules.Validator;
|
|
using Core.Thalos.Application.UseCases.Permissions;
|
|
using Core.Thalos.Application.UseCases.Permissions.Adapter;
|
|
using Core.Thalos.Application.UseCases.Permissions.Input;
|
|
using Core.Thalos.Application.UseCases.Permissions.Ports;
|
|
using Core.Thalos.Application.UseCases.Permissions.Validator;
|
|
using Core.Thalos.Application.UseCases.Role;
|
|
using Core.Thalos.Application.UseCases.Roles.Adapter;
|
|
using Core.Thalos.Application.UseCases.Roles.Input;
|
|
using Core.Thalos.Application.UseCases.Roles.Ports;
|
|
using Core.Thalos.Application.UseCases.Roles.Validator;
|
|
using Core.Thalos.Application.UseCases.Users;
|
|
using Core.Thalos.Application.UseCases.Users.Adapter;
|
|
using Core.Thalos.Application.UseCases.Users.Input;
|
|
using Core.Thalos.Application.UseCases.Users.Ports;
|
|
using Core.Thalos.Application.UseCases.Users.Validator;
|
|
using FluentValidation;
|
|
using Lib.Architecture.BuildingBlocks;
|
|
|
|
namespace Core.Thalos.Service.API.Extensions
|
|
{
|
|
public static class ServiceCollectionExtension
|
|
{
|
|
public static IServiceCollection AddServiceConfigurationLayer(this IServiceCollection services)
|
|
{
|
|
#region User Services
|
|
|
|
services.AddScoped<IUserPort, UserPort>();
|
|
services.AddScoped<IComponentHandler<GetAllUsersRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<GetUserRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<LoginUserRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<LogoutUserRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<GetUserByEmailRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<AddCompanyToUserRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<RemoveCompanyFromUserRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<AddProjectToUserRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<RemoveProjectFromUserRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<ValidateUserExistenceRequest>, UserHandler>();
|
|
services.AddScoped<IComponentHandler<GetTokenAdapterRequest>, UserHandler>();
|
|
|
|
|
|
services.AddValidatorsFromAssemblyContaining<CreateUserValidator>();
|
|
services.AddScoped<IValidator<CreateUserRequest>, CreateUserValidator>();
|
|
services.AddScoped<IComponentHandler<CreateUserRequest>, UserHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<UpdateUserValidator>();
|
|
services.AddScoped<IValidator<UpdateUserRequest>, UpdateUserValidator>();
|
|
services.AddScoped<IComponentHandler<UpdateUserRequest>, UserHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<ChangeUserStatusValidator>();
|
|
services.AddScoped<IValidator<ChangeUserStatusRequest>, ChangeUserStatusValidator>();
|
|
services.AddScoped<IComponentHandler<ChangeUserStatusRequest>, UserHandler>();
|
|
|
|
#endregion
|
|
|
|
#region Role Services
|
|
|
|
services.AddScoped<IRolePort, RolePort>();
|
|
services.AddScoped<IComponentHandler<GetAllRolesRequest>, RoleHandler>();
|
|
services.AddScoped<IComponentHandler<GetRoleRequest>, RoleHandler>();
|
|
services.AddScoped<IComponentHandler<AddApplicationToRoleRequest>, RoleHandler>();
|
|
services.AddScoped<IComponentHandler<RemoveApplicationFromRoleRequest>, RoleHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<CreateRoleValidator>();
|
|
services.AddScoped<IValidator<CreateRoleRequest>, CreateRoleValidator>();
|
|
services.AddScoped<IComponentHandler<CreateRoleRequest>, RoleHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<UpdateRoleValidator>();
|
|
services.AddScoped<IValidator<UpdateRoleRequest>, UpdateRoleValidator>();
|
|
services.AddScoped<IComponentHandler<UpdateRoleRequest>, RoleHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<ChangeRoleStatusValidator>();
|
|
services.AddScoped<IValidator<ChangeRoleStatusRequest>, ChangeRoleStatusValidator>();
|
|
services.AddScoped<IComponentHandler<ChangeRoleStatusRequest>, RoleHandler>();
|
|
|
|
#endregion
|
|
|
|
#region Permission Services
|
|
|
|
services.AddScoped<IPermissionPort, PermissionPort>();
|
|
services.AddScoped<IComponentHandler<GetAllPermissionsRequest>, PermissionHandler>();
|
|
services.AddScoped<IComponentHandler<GetPermissionRequest>, PermissionHandler>();
|
|
services.AddScoped<IComponentHandler<GetAllPermissionsByListRequest>, PermissionHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<CreatePermissionValidator>();
|
|
services.AddScoped<IValidator<CreatePermissionRequest>, CreatePermissionValidator>();
|
|
services.AddScoped<IComponentHandler<CreatePermissionRequest>, PermissionHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<UpdatePermissionValidator>();
|
|
services.AddScoped<IValidator<UpdatePermissionRequest>, UpdatePermissionValidator>();
|
|
services.AddScoped<IComponentHandler<UpdatePermissionRequest>, PermissionHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<ChangePermissionStatusValidator>();
|
|
services.AddScoped<IValidator<ChangePermissionStatusRequest>, ChangePermissionStatusValidator>();
|
|
services.AddScoped<IComponentHandler<ChangePermissionStatusRequest>, PermissionHandler>();
|
|
|
|
#endregion
|
|
|
|
#region Module Services
|
|
|
|
services.AddScoped<IModulePort, ModulePort>();
|
|
services.AddScoped<IComponentHandler<GetAllModulesRequest>, ModuleHandler>();
|
|
services.AddScoped<IComponentHandler<GetModuleRequest>, ModuleHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<GetAllModulesByListValidator>();
|
|
services.AddScoped<IValidator<GetAllModulesByListRequest>, GetAllModulesByListValidator>();
|
|
services.AddScoped<IComponentHandler<GetAllModulesByListRequest>, ModuleHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<CreateModuleValidator>();
|
|
services.AddScoped<IValidator<CreateModuleRequest>, CreateModuleValidator>();
|
|
services.AddScoped<IComponentHandler<CreateModuleRequest>, ModuleHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<UpdateModuleValidator>();
|
|
services.AddScoped<IValidator<UpdateModuleRequest>, UpdateModuleValidator>();
|
|
services.AddScoped<IComponentHandler<UpdateModuleRequest>, ModuleHandler>();
|
|
|
|
services.AddValidatorsFromAssemblyContaining<ChangeModuleStatusValidator>();
|
|
services.AddScoped<IValidator<ChangeModuleStatusRequest>, ChangeModuleStatusValidator>();
|
|
services.AddScoped<IComponentHandler<ChangeModuleStatusRequest>, ModuleHandler>();
|
|
|
|
#endregion
|
|
|
|
return services;
|
|
}
|
|
}
|
|
}
|