Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
🔧 (appsettings.json, configuration.json): update configuration struct…
…ure for consistency ♻️ (TfsStaticEnrichers.cs, TfsChangeSetMappingToolOptions.cs, ServiceCollectionExtensions.cs): refactor code for better readability and maintainability 📝 (MigrationTools.xml): update generated documentation to reflect recent changes 💡 (MigrationHostTests.cs): comment out FieldMaps clearing for future review The configuration structure is updated to ensure consistency across different files. The refactoring in the code improves readability and maintainability by aligning the naming conventions and formatting. The generated documentation is updated to reflect the recent changes in the codebase. Commenting out the FieldMaps clearing in the tests is done to review its necessity in future updates. ♻️ (MigrationTools): refactor field mapping logic and remove deprecated tests - Remove `FieldMapContainer` and related configurations. - Replace `FieldMapContainer` with `FieldMappingTool`. - Update `StaticEnrichers` to include `FieldMappingTool`. - Delete outdated test files `EngineConfigurationBuilderTests.cs` and `EngineConfigurationTests.cs`. - Update `FieldMapContainerTests` to use `FieldMappingToolOptions`. The changes streamline the field mapping logic by replacing the `FieldMapContainer` with a more cohesive `FieldMappingTool`. This reduces redundancy and improves maintainability. Outdated tests are removed to reflect the new configuration structure, ensuring the codebase remains clean and relevant. ✨ (FieldMappingTool): add FieldMappingTool and its configuration options Introduce a new `FieldMappingTool` class to handle field mappings for work items. This tool allows for the configuration and application of field mappings based on work item types. The `FieldMappingToolOptions` class is also added to manage the configuration settings for the `FieldMappingTool`. 🔧 (ServiceCollectionExtensions): register FieldMappingTool and its options Update the `ServiceCollectionExtensions` to register the `FieldMappingTool` and its configuration options. This ensures that the tool is available for dependency injection and properly configured. ♻️ (EngineConfiguration): remove FieldMaps from EngineConfiguration Remove the `FieldMaps` property from the `EngineConfiguration` class as it is now managed by the `FieldMappingToolOptions`. This refactor centralizes the field mapping logic and configuration, making the codebase cleaner and more maintainable. These changes are done to modularize the field mapping functionality, making it easier to manage and extend. The new `FieldMappingTool` provides a dedicated place for field mapping logic, improving code organization and maintainability. ♻️ (EngineConfigurationBuilder.cs): remove FieldMaps initialization and comment out example field maps 💡 (IFieldMap.cs): mark Configure method as obsolete ♻️ (MigrationProcessorBase.cs, StaticProcessorBase.cs): inject StaticEnrichers dependency FieldMaps initialization is removed to streamline the configuration process. Example field maps are commented out to reduce clutter and potential confusion. The Configure method in IFieldMap.cs is marked as obsolete to indicate it should not be used in future implementations. StaticEnrichers dependency is injected into MigrationProcessorBase and StaticProcessorBase to enhance the flexibility and extensibility of the processors. ♻️ (refactor): update migration context classes to use TfsMigrationProcessorBase and enrichers Refactor migration context classes to inherit from TfsMigrationProcessorBase instead of MigrationProcessorBase. This change improves code consistency and leverages the new base class functionalities. Additionally, update constructors to include TfsStaticEnrichers and StaticEnrichers for better extensibility and maintainability. Remove the obsolete TestRunsMigrationContext class to clean up the codebase. ♻️ (MigrationContext): refactor migration contexts to use TfsMigrationProcessorBase and TfsStaticProcessorBase Refactor migration contexts to inherit from `TfsMigrationProcessorBase` and `TfsStaticProcessorBase` for better code organization and consistency. This change also integrates `TfsStaticEnrichers` and `StaticEnrichers` into the constructors, ensuring that enrichers are properly utilized across different migration contexts. This improves the maintainability and extensibility of the codebase by centralizing common functionality and reducing redundancy. ♻️ (refactor): extend StaticProcessorBase to TfsStaticProcessorBase Refactor multiple classes to inherit from the new TfsStaticProcessorBase instead of StaticProcessorBase. This change introduces a new base class, TfsStaticProcessorBase, which includes additional enrichers specific to TFS (Team Foundation Server) migrations. This refactor aims to improve code modularity and maintainability by separating TFS-specific logic from the general static processor logic. ✨ (TfsStaticProcessorBase): add new abstract class TfsStaticProcessorBase Introduce a new abstract class `TfsStaticProcessorBase` to serve as a base for TFS-specific static processors. This class extends `StaticProcessorBase` and includes additional dependencies specific to TFS, such as `TfsStaticEnrichers`. This change aims to modularize and encapsulate TFS-specific logic, making the codebase more maintainable and extensible.
- Loading branch information