192 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			192 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using Core.Inventory.Application.UseCases.Inventory;
 | |
| using Core.Inventory.Application.UseCases.Inventory.Adapter;
 | |
| using Core.Inventory.Application.UseCases.Inventory.Input.Base;
 | |
| using Core.Inventory.Application.UseCases.Inventory.Input.Variant;
 | |
| using Core.Inventory.Application.UseCases.Inventory.Ports;
 | |
| using Core.Inventory.Application.UseCases.Inventory.Validator.Base;
 | |
| using Core.Inventory.Application.UseCases.Inventory.Validator.Variant;
 | |
| using Core.Inventory.Application.UseCases.Product;
 | |
| using Core.Inventory.Application.UseCases.Product.Adapter;
 | |
| using Core.Inventory.Application.UseCases.Product.Input;
 | |
| using Core.Inventory.Application.UseCases.Product.Ports;
 | |
| using Core.Inventory.Application.UseCases.Product.Validator;
 | |
| using Core.Inventory.Application.UseCases.Tag;
 | |
| using Core.Inventory.Application.UseCases.Tag.Adapter;
 | |
| using Core.Inventory.Application.UseCases.Tag.Input;
 | |
| using Core.Inventory.Application.UseCases.Tag.Ports;
 | |
| using Core.Inventory.Application.UseCases.Tag.Validator;
 | |
| using Core.Inventory.Application.UseCases.TagOverride;
 | |
| using Core.Inventory.Application.UseCases.TagOverride.Adapter;
 | |
| using Core.Inventory.Application.UseCases.TagOverride.Input;
 | |
| using Core.Inventory.Application.UseCases.TagOverride.Ports;
 | |
| using Core.Inventory.Application.UseCases.TagOverride.Validator;
 | |
| using Core.Inventory.Application.UseCases.TagType;
 | |
| using Core.Inventory.Application.UseCases.TagType.Adapter;
 | |
| using Core.Inventory.Application.UseCases.TagType.Input;
 | |
| using Core.Inventory.Application.UseCases.TagType.Ports;
 | |
| using Core.Inventory.Application.UseCases.TagType.Validator;
 | |
| using FluentValidation;
 | |
| using Lib.Architecture.BuildingBlocks;
 | |
| 
 | |
| namespace Core.Inventory.Service.API.Extensions
 | |
| {
 | |
|     public static class ServiceCollectionExtension
 | |
|     {
 | |
|         public static IServiceCollection AddServiceConfigurationLayer(this IServiceCollection services)
 | |
|         {
 | |
|             #region FurnitureBase
 | |
|             services.AddScoped<IFurnitureBasePort, FurnitureBasePort>();
 | |
| 
 | |
|             services.AddScoped<IComponentHandler<GetAllFurnitureBaseRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetFurnitureBaseByIdRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<CreateFurnitureBaseRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<UpdateFurnitureBaseRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<ChangeFurnitureBaseStatusRequest>, InventoryHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<CreateFurnitureBaseValidator>();
 | |
|             services.AddScoped<IValidator<CreateFurnitureBaseRequest>, CreateFurnitureBaseValidator>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<UpdateFurnitureBaseValidator>();
 | |
|             services.AddScoped<IValidator<UpdateFurnitureBaseRequest>, UpdateFurnitureBaseValidator>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<ChangeFurnitureBaseStatusValidator>();
 | |
|             services.AddScoped<IValidator<ChangeFurnitureBaseStatusRequest>, ChangeFurnitureBaseStatusValidator>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<GetFurnitureBaseByIdValidator>();
 | |
|             services.AddScoped<IValidator<GetFurnitureBaseByIdRequest>, GetFurnitureBaseByIdValidator>();
 | |
|             #endregion
 | |
| 
 | |
|             #region FurnitureVariant
 | |
|             services.AddScoped<IFurnitureVariantPort, FurnitureVariantPort>();
 | |
| 
 | |
|             services.AddScoped<IComponentHandler<GetAllFurnitureVariantsByModelIdRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetFurnitureVariantByIdRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<CreateFurnitureVariantRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<UpdateFurnitureVariantRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<ChangeFurnitureVariantStatusRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetFurnitureVariantsByIdsRequest>, InventoryHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetAllFurnitureVariantRequest>, InventoryHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<CreateFurnitureVariantValidator>();
 | |
|             services.AddScoped<IValidator<CreateFurnitureVariantRequest>, CreateFurnitureVariantValidator>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<UpdateFurnitureVariantValidator>();
 | |
|             services.AddScoped<IValidator<UpdateFurnitureVariantRequest>, UpdateFurnitureVariantValidator>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<ChangeFurnitureVariantStatusValidator>();
 | |
|             services.AddScoped<IValidator<ChangeFurnitureVariantStatusRequest>, ChangeFurnitureVariantStatusValidator>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<GetFurnitureVariantByIdValidator>();
 | |
|             services.AddScoped<IValidator<GetFurnitureVariantByIdRequest>, GetFurnitureVariantByIdValidator>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<GetAllFurnitureVariantsByModelIdValidator>();
 | |
|             services.AddScoped<IValidator<GetAllFurnitureVariantsByModelIdRequest>, GetAllFurnitureVariantsByModelIdValidator>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<GetFurnitureVariantsByIdsValidator>();
 | |
|             services.AddScoped<IValidator<GetFurnitureVariantsByIdsRequest>, GetFurnitureVariantsByIdsValidator>();
 | |
|             #endregion
 | |
| 
 | |
|             #region TagType Services
 | |
| 
 | |
|             services.AddScoped<ITagTypePort, TagTypePort>();
 | |
|             services.AddScoped<IComponentHandler<GetAllTagTypesRequest>, TagTypeHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetTagTypeRequest>, TagTypeHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<GetAllTagTypesByListValidator>();
 | |
|             services.AddScoped<IValidator<GetAllTagTypesByListRequest>, GetAllTagTypesByListValidator>();
 | |
|             services.AddScoped<IComponentHandler<GetAllTagTypesByListRequest>, TagTypeHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<CreateTagTypeValidator>();
 | |
|             services.AddScoped<IValidator<CreateTagTypeRequest>, CreateTagTypeValidator>();
 | |
|             services.AddScoped<IComponentHandler<CreateTagTypeRequest>, TagTypeHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<UpdateTagTypeValidator>();
 | |
|             services.AddScoped<IValidator<UpdateTagTypeRequest>, UpdateTagTypeValidator>();
 | |
|             services.AddScoped<IComponentHandler<UpdateTagTypeRequest>, TagTypeHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<ChangeTagTypeStatusValidator>();
 | |
|             services.AddScoped<IValidator<ChangeTagTypeStatusRequest>, ChangeTagTypeStatusValidator>();
 | |
|             services.AddScoped<IComponentHandler<ChangeTagTypeStatusRequest>, TagTypeHandler>();
 | |
| 
 | |
|             #endregion
 | |
| 
 | |
|             #region Tag Services
 | |
| 
 | |
|             services.AddScoped<ITagPort, TagPort>();
 | |
|             services.AddScoped<IComponentHandler<GetAllTagsRequest>, TagHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetTagRequest>, TagHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<GetAllTagsByListValidator>();
 | |
|             services.AddScoped<IValidator<GetAllTagsByListRequest>, GetAllTagsByListValidator>();
 | |
|             services.AddScoped<IComponentHandler<GetAllTagsByListRequest>, TagHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<CreateTagValidator>();
 | |
|             services.AddScoped<IValidator<CreateTagRequest>, CreateTagValidator>();
 | |
|             services.AddScoped<IComponentHandler<CreateTagRequest>, TagHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<UpdateTagValidator>();
 | |
|             services.AddScoped<IValidator<UpdateTagRequest>, UpdateTagValidator>();
 | |
|             services.AddScoped<IComponentHandler<UpdateTagRequest>, TagHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<ChangeTagStatusValidator>();
 | |
|             services.AddScoped<IValidator<ChangeTagStatusRequest>, ChangeTagStatusValidator>();
 | |
|             services.AddScoped<IComponentHandler<ChangeTagStatusRequest>, TagHandler>();
 | |
| 
 | |
|             services.AddScoped<IComponentHandler<AddParentTagToTagRequest>, TagHandler>();
 | |
|             services.AddScoped<IComponentHandler<RemoveParentTagFromTagRequest>, TagHandler>();
 | |
| 
 | |
|             #endregion
 | |
| 
 | |
|             #region TagOverride Services
 | |
| 
 | |
|             services.AddScoped<ITagOverridePort, TagOverridePort>();
 | |
|             services.AddScoped<IComponentHandler<GetAllTagOverridesRequest>, TagOverrideHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetTagOverrideRequest>, TagOverrideHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<GetAllTagOverridesByListValidator>();
 | |
|             services.AddScoped<IValidator<GetAllTagOverridesByListRequest>, GetAllTagOverridesByListValidator>();
 | |
|             services.AddScoped<IComponentHandler<GetAllTagOverridesByListRequest>, TagOverrideHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<CreateTagOverrideValidator>();
 | |
|             services.AddScoped<IValidator<CreateTagOverrideRequest>, CreateTagOverrideValidator>();
 | |
|             services.AddScoped<IComponentHandler<CreateTagOverrideRequest>, TagOverrideHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<UpdateTagOverrideValidator>();
 | |
|             services.AddScoped<IValidator<UpdateTagOverrideRequest>, UpdateTagOverrideValidator>();
 | |
|             services.AddScoped<IComponentHandler<UpdateTagOverrideRequest>, TagOverrideHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<ChangeTagOverrideStatusValidator>();
 | |
|             services.AddScoped<IValidator<ChangeTagOverrideStatusRequest>, ChangeTagOverrideStatusValidator>();
 | |
|             services.AddScoped<IComponentHandler<ChangeTagOverrideStatusRequest>, TagOverrideHandler>();
 | |
| 
 | |
|             #endregion
 | |
| 
 | |
|             #region Product Services
 | |
| 
 | |
|             services.AddScoped<IProductPort, ProductPort>();
 | |
|             services.AddScoped<IComponentHandler<GetAllProductsRequest>, ProductHandler>();
 | |
|             services.AddScoped<IComponentHandler<GetProductRequest>, ProductHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<GetAllProductsByListValidator>();
 | |
|             services.AddScoped<IValidator<GetAllProductsByListRequest>, GetAllProductsByListValidator>();
 | |
|             services.AddScoped<IComponentHandler<GetAllProductsByListRequest>, ProductHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<CreateProductValidator>();
 | |
|             services.AddScoped<IValidator<CreateProductRequest>, CreateProductValidator>();
 | |
|             services.AddScoped<IComponentHandler<CreateProductRequest>, ProductHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<UpdateProductValidator>();
 | |
|             services.AddScoped<IValidator<UpdateProductRequest>, UpdateProductValidator>();
 | |
|             services.AddScoped<IComponentHandler<UpdateProductRequest>, ProductHandler>();
 | |
| 
 | |
|             services.AddValidatorsFromAssemblyContaining<ChangeProductStatusValidator>();
 | |
|             services.AddScoped<IValidator<ChangeProductStatusRequest>, ChangeProductStatusValidator>();
 | |
|             services.AddScoped<IComponentHandler<ChangeProductStatusRequest>, ProductHandler>();
 | |
| 
 | |
|             #endregion
 | |
| 
 | |
|             return services;
 | |
|         }
 | |
|     }
 | |
| }
 | 
