Refactor/Data & Domain Layers, Package Structure, and DI Configuration#68
Merged
Conversation
…, and unify the State repository interface in the domain layer to be consistent with the rest of the project.
… and unify the task repository interface in the domain layer to be consistent with the rest of the project.
… and unify the user repository interface in the domain layer to be consistent with the rest of the project.
…epository, and unify the authentication repository interface in the domain layer to be consistent with the rest of the project.
…odel, and rename state model to work flow state for greater clarity.
Test Results196 tests ±0 196 ✅ ±0 2s ⏱️ -1s Results for commit 1b8eb1e. ± Comparison against base commit cab6dca. This pull request removes 111 and adds 111 tests. Note that renamed tests count towards both. |
Mostafa-alsaygh
approved these changes
May 18, 2025
Collaborator
|
great work |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Package reorganization
CSV filespackage intolocal.Mongopackage intoremote.logicpackage todomain.utilpackage intodomain.screenclasses into theconsolepackage.DTOs & Mapping
Data provider split
LocalDataSource(CSV),RemoteDataSource(MongoDB)Custom exceptions
DatabaseExceptionin the data layer.AuthenticationExceptionin the data layer.FileExceptionin the data layer and apply it to all CSV handlers.Repository enhancements
AuditLogMongoDbImpl: apply DTOs & handleDatabaseException.ProjectRepository: apply DTOs & handleDatabaseException.StateRepository: implement DTOs, handleDatabaseException, and unify its interface in the domain layer.TaskRepository: implement DTOs, handleDatabaseException, and unify its interface in the domain layer.UserRepository: implement DTOs, handleDatabaseException, and unify its interface in the domain layer.AuthenticationRepository: implement DTOs, handleDatabaseException, and unify its interface in the domain layer.Entity renaming
Entityclass intodomain(formerly logic) and rename it toModel.StatetoWorkflowStatefor greater clarity.Dependency Injection
AppModulein the DI configuration to reflect all structural changes.