157 lines
		
	
	
		
			8.5 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			157 lines
		
	
	
		
			8.5 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.Tenants;
 | |
| using Core.Thalos.Application.UseCases.Tenants.Adapter;
 | |
| using Core.Thalos.Application.UseCases.Tenants.Input;
 | |
| using Core.Thalos.Application.UseCases.Tenants.Ports;
 | |
| using Core.Thalos.Application.UseCases.Tenants.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<DeleteUserRequest>, UserHandler>();
 | |
|             services.AddScoped<IComponentHandler<LoginUserRequest>, UserHandler>();
 | |
|             services.AddScoped<IComponentHandler<LogoutUserRequest>, UserHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetUserByEmailRequest>, 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<DeleteRoleRequest>, 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<DeletePermissionRequest>, 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.AddScoped<IComponentHandler<DeleteModuleRequest>, 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
 | |
| 
 | |
|             #region Tenant Services
 | |
| 
 | |
|             services.AddScoped<ITenantPort, TenantPort>();
 | |
|             services.AddScoped<IComponentHandler<GetAllTenantsRequest>, TenantHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetTenantRequest>, TenantHandler>();
 | |
|             services.AddScoped<IComponentHandler<DeleteTenantRequest>, TenantHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<CreateTenantValidator>();
 | |
|             services.AddScoped<IValidator<CreateTenantRequest>, CreateTenantValidator>();
 | |
|             services.AddScoped<IComponentHandler<CreateTenantRequest>, TenantHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<UpdateTenantValidator>();
 | |
|             services.AddScoped<IValidator<UpdateTenantRequest>, UpdateTenantValidator>();
 | |
|             services.AddScoped<IComponentHandler<UpdateTenantRequest>, TenantHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<ChangeTenantStatusValidator>();
 | |
|             services.AddScoped<IValidator<ChangeTenantStatusRequest>, ChangeTenantStatusValidator>();
 | |
|             services.AddScoped<IComponentHandler<ChangeTenantStatusRequest>, TenantHandler>();
 | |
| 
 | |
|             #endregion
 | |
| 
 | |
|             return services;
 | |
|         }
 | |
|     }
 | |
| }
 | 
