refactor(datasync): remove old ETL DI registrations

This commit is contained in:
Joseph Doherty
2026-01-06 14:07:28 -05:00
parent 981c410cb3
commit 7508001be1
@@ -1,23 +1,11 @@
using JdeScoping.Core.Models;
using JdeScoping.Core.Models.Inventory;
using JdeScoping.Core.Models.Organization;
using JdeScoping.Core.Models.Quality;
using JdeScoping.Core.Models.WorkOrders;
using JdeScoping.DataSync;
using JdeScoping.DataSync.Options;
using JdeScoping.DataSync.Configuration.MergeConfigurations;
using JdeScoping.DataSync.Contracts;
using JdeScoping.DataSync.Fetchers.Cms;
using JdeScoping.DataSync.Fetchers.Jde;
using JdeScoping.DataSync.Generated;
using JdeScoping.DataSync.HealthChecks;
using JdeScoping.DataSync.Services;
using JdeScoping.DataSync.Telemetry;
using Microsoft.Extensions.Configuration;
// New ETL pipeline infrastructure
using EtlPipelineFactory = JdeScoping.DataSync.Services.EtlPipelineFactory;
namespace Microsoft.Extensions.DependencyInjection;
/// <summary>
@@ -57,25 +45,6 @@ public static class DataSyncDependencyInjection
services.AddScoped<ITableSyncOperation, TableSyncOperation>();
services.AddScoped<IDataUpdateRepository, DataUpdateRepository>();
// Register bulk merge services
services.AddSingleton<IDataReaderFactory, DataReaderFactory>();
services.AddSingleton<ISchemaValidator, SchemaValidator>();
services.AddScoped<IBulkMergeHelper, BulkMergeHelper>();
// Register merge configuration registry
services.AddSingleton<IMergeConfigurationRegistry, MergeConfigurationRegistry>();
// Register merge configurations - explicit registration per entity
services.AddSingleton<IMergeConfiguration<WorkOrder>, WorkOrderMergeConfiguration>();
services.AddSingleton<IMergeConfiguration<Lot>, LotMergeConfiguration>();
services.AddSingleton<IMergeConfiguration<LotUsage>, LotUsageMergeConfiguration>();
services.AddSingleton<IMergeConfiguration<Item>, ItemMergeConfiguration>();
services.AddSingleton<IMergeConfiguration<WorkCenter>, WorkCenterMergeConfiguration>();
services.AddSingleton<IMergeConfiguration<ProfitCenter>, ProfitCenterMergeConfiguration>();
services.AddSingleton<IMergeConfiguration<JdeUser>, JdeUserMergeConfiguration>();
services.AddSingleton<IMergeConfiguration<Branch>, BranchMergeConfiguration>();
services.AddSingleton<IMergeConfiguration<MisData>, MisDataMergeConfiguration>();
// Register health check
services.AddHealthChecks()
.AddCheck<DataSyncHealthCheck>("data-sync", tags: ["datasync", "background"]);
@@ -83,34 +52,6 @@ public static class DataSyncDependencyInjection
// Register metrics as singleton
services.AddSingleton<DataSyncMetrics>();
// Register JDE fetchers
services.AddScoped<IDataFetcher<WorkOrder>, JdeWorkOrderFetcher>();
services.AddScoped<IDataFetcher<LotUsage>, JdeLotUsageFetcher>();
services.AddScoped<IDataFetcher<Item>, JdeItemFetcher>();
services.AddScoped<IDataFetcher<Lot>, JdeLotFetcher>();
services.AddScoped<IDataFetcher<WorkCenter>, JdeWorkCenterFetcher>();
services.AddScoped<IDataFetcher<ProfitCenter>, JdeProfitCenterFetcher>();
services.AddScoped<IDataFetcher<JdeUser>, JdeUserFetcher>();
services.AddScoped<IDataFetcher<Branch>, JdeBranchFetcher>();
// Register CMS fetchers
services.AddScoped<IDataFetcher<MisData>, CmsMisDataFetcher>();
// Register post processors
services.AddScoped<IPostProcessor, MisDataPostProcessor>();
services.AddScoped<MisDataPostProcessor>();
// Register fetchers by name for dynamic resolution
services.AddScoped<JdeWorkOrderFetcher>();
services.AddScoped<JdeLotUsageFetcher>();
services.AddScoped<JdeItemFetcher>();
services.AddScoped<JdeLotFetcher>();
services.AddScoped<JdeWorkCenterFetcher>();
services.AddScoped<JdeProfitCenterFetcher>();
services.AddScoped<JdeUserFetcher>();
services.AddScoped<JdeBranchFetcher>();
services.AddScoped<CmsMisDataFetcher>();
return services;
}
}