Skip to content

Conversation

@jayblanc
Copy link
Contributor

This pull request refactors the feature installation and tracking logic in the UnomiManagementServiceImpl class to improve clarity and reliability. The changes primarily focus on renaming variables for better intent, ensuring features are only installed or started when appropriate, and making feature state transitions more robust.

Feature tracking and naming improvements:

  • Renamed the installedFeatures and startedFeatures lists to trackedInstalledFeatures and trackedStartedFeatures for clearer intent and to avoid confusion with Karaf's internal feature tracking.

Feature installation and startup logic:

  • Improved the feature installation process to check both Unomi's tracked features and Karaf's actual installed features, ensuring that features are only installed if not already present, and logging accordingly.
  • Adjusted the feature starting logic to track started features using the new trackedStartedFeatures list and to ensure features are only started if required.

Feature stopping and uninstalling:

  • Updated the stopping and uninstalling logic to use the new tracking lists and to clear them appropriately after operations, ensuring accurate tracking of feature lifecycle. [1] [2] [3]

Feature state transition safety:

  • Enhanced the startFeature and stopFeature methods to check the current feature state before attempting to start or stop, preventing unnecessary state changes and potential errors.

…atures. This avoid duplicate installation in tests.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant