Closed vishwa2710 closed 2 weeks ago
Attention: Patch coverage is 90.47619%
with 14 lines
in your changes missing coverage. Please review.
Project coverage is 81.84%. Comparing base (
70b4ca8
) to head (6310e75
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
[!CAUTION]
Review failed
The pull request is closed.
The changes involve significant modifications to the Manager
class across various modules of the OpenSpaceToolkit Physics library. The Manager
class now inherits from BaseManager
, leading to the removal of several member functions and variables related to mode and local repository management. The constructor has been simplified to a default constructor without parameters. Additionally, several methods have been renamed or marked as virtual to facilitate overriding in derived classes. The overall structure is streamlined, focusing on leveraging base class functionality and simplifying internal management.
File | Change Summary |
---|---|
include/OpenSpaceToolkit/Physics/Coordinate/Frame/Provider/IERS/Manager.hpp |
Class now inherits from BaseManager . Removed Mode enum and associated methods. Simplified constructor to default. Marked reset() and setup_() as virtual. |
include/OpenSpaceToolkit/Physics/Environment/Atmospheric/Earth/Manager.hpp |
Class now inherits from BaseManager . Removed Mode enum and related methods. Constructor simplified. Added new methods for CSSI Space Weather management. Renamed setup() to setup_() . |
include/OpenSpaceToolkit/Physics/Environment/Gravitational/Earth/Manager.hpp |
Class now inherits from BaseManager . Removed Mode enum and local repository management methods. Renamed getDataFileUrlsForType() and DataFileNameFromType() . |
include/OpenSpaceToolkit/Physics/Environment/Magnetic/Earth/Manager.hpp |
Class now inherits from BaseManager . Removed Mode enum and local repository management methods. Renamed getDataFileUrlsForType() and DataFileNameFromType() . |
include/OpenSpaceToolkit/Physics/Manager.hpp |
New file introducing a thread-safe base class Manager with methods for managing a local repository and operational modes. |
src/OpenSpaceToolkit/Physics/Coordinate/Frame/Provider/IERS/Manager.cpp |
Removed methods related to mode and repository management. Constructor modified to initialize using BaseManager . Updated reset() and setup_() methods. |
src/OpenSpaceToolkit/Physics/Environment/Atmospheric/Earth/Manager.cpp |
Removed methods related to mode and repository management. Renamed several methods for clarity. Updated reset() to call BaseManager::reset() . |
src/OpenSpaceToolkit/Physics/Environment/Gravitational/Earth/Manager.cpp |
Removed multiple methods related to mode and local repository management. Constructor modified to initialize BaseManager . Renamed methods for consistency. |
src/OpenSpaceToolkit/Physics/Environment/Magnetic/Earth/Manager.cpp |
Removed methods related to mode and local repository management. Constructor modified to initialize BaseManager . Renamed methods for consistency. |
src/OpenSpaceToolkit/Physics/Manager.cpp |
Implements the Manager class managing a local repository with methods for mode and repository management. |
test/OpenSpaceToolkit/Physics/Coordinate/Frame/Provider/IERS/Manager.test.cpp |
Removed tests for DefaultMode , DefaultLocalRepository , and DefaultLocalRepositoryLockTimeout . |
test/OpenSpaceToolkit/Physics/Environment/Atmospheric/Earth/Manager.test.cpp |
Removed tests for mode and local repository management. |
test/OpenSpaceToolkit/Physics/Environment/Gravitational/Earth.test.cpp |
Replaced calls to setLocalRepository with reset() in tests. |
test/OpenSpaceToolkit/Physics/Environment/Gravitational/Earth/Manager.test.cpp |
Removed tests for mode and local repository management. |
test/OpenSpaceToolkit/Physics/Environment/Magnetic/Earth.test.cpp |
Replaced calls to setLocalRepository with reset() in tests. |
test/OpenSpaceToolkit/Physics/Environment/Magnetic/Earth/Manager.test.cpp |
Adjusted tests to use reset() instead of direct calls to DefaultMode and DefaultLocalRepository . |
In the toolkit's heart, changes take flight,
Managers revamped, shining so bright.
Modes and repos, now simpler and clear,
A streamlined design, bringing us cheer!
With every new method, a hop and a skip,
The code dances forward, on a joyful trip! 🐇✨
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
This MR refactors the various Managers by creating a Parent "BaseManager" class. It is a breaking change as some of the static methods no longer exist, however all the functionality is maintained.
The unit tests are partially updated. I have to remove some of the common unit tests in the various managers and create a Manager.test.cpp for the Base Manager class. Also the python bindings have to be updated. But this is ready for an initial review.
Summary by CodeRabbit
New Features
Manager
class for managing physics-related data with a focus on local repository handling.Bug Fixes
Refactor
Manager
inherit fromBaseManager
.Tests
Manager
starts in a known state before assertions.