-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SDFAB-844 - Part 2] Add SlicingConfig class #454
Conversation
We wil use netcfg for initialization
We wil use netcfg for initialization
Sytem is not a traffic class
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor comments. Do you plan to address the TODO in this PR ?
src/test/java/org/stratumproject/fabric/tna/slicing/api/SlicingConfigTest.java
Outdated
Show resolved
Hide resolved
Codecov Report
@@ Coverage Diff @@
## qos-refactoring #454 +/- ##
==================================================
Coverage ? 68.54%
Complexity ? 641
==================================================
Files ? 59
Lines ? 4393
Branches ? 483
==================================================
Hits ? 3011
Misses ? 1140
Partials ? 242 Continue to review full report at Codecov.
|
src/main/java/org/stratumproject/fabric/tna/slicing/api/SliceDescription.java
Outdated
Show resolved
Hide resolved
src/main/java/org/stratumproject/fabric/tna/slicing/api/SlicingConfig.java
Show resolved
Hide resolved
For now, we can safely assume it will always be 0
src/main/java/org/stratumproject/fabric/tna/slicing/api/SlicingConfig.java
Show resolved
Hide resolved
src/main/java/org/stratumproject/fabric/tna/slicing/api/SlicingConfig.java
Show resolved
Hide resolved
* [SDFAB-844 - Part 1] Refactor SlicingManager to assume static allocation of queues to TCs (#453) * Add SlicingProviderService interface * Remove slice/tc initialization from FabricUpfProgrammable We wil use netcfg for initialization * Remove slice/tc initialization from FabricUpfProgrammable We wil use netcfg for initialization * Remove REST API for adding/removing slice/tcs * Remove unused CLI commands * Revisit TrafficClass and remove hardcoded initialization Sytem is not a traffic class * Introduce TrafficClassConfig class * Remove queue allocation logic * Comments and renaming on SlicingManager * Fix meter color int value * Less ambiguous handling of BE * Fix tests * Remove leftover QueueStoreValue * Javadoc * Wordsmithing * Improvements to TrafficClassConfig * Rename config class to description to disambiguate from netcfg * Use default for mobile slice * clean up rest API docs * address review comments * Fix test and checkstyles * Move distributed store destroy to preDeactivate hook * Update default tc javadoc * Fix tests * [SDFAB-844 - Part 2] Add SlicingConfig class (#454) * Add SlicingProviderService interface * Remove slice/tc initialization from FabricUpfProgrammable We wil use netcfg for initialization * Remove slice/tc initialization from FabricUpfProgrammable We wil use netcfg for initialization * Remove REST API for adding/removing slice/tcs * Remove unused CLI commands * Revisit TrafficClass and remove hardcoded initialization Sytem is not a traffic class * Introduce TrafficClassConfig class * Remove queue allocation logic * Comments and renaming on SlicingManager * Fix meter color int value * Less ambiguous handling of BE * Fix tests * Remove leftover QueueStoreValue * Javadoc * Wordsmithing * Improvements to TrafficClassConfig * Rename config class to description to disambiguate from netcfg * First stab at config class * First stab at tests for SlicingTests * Forgot to check in the test JSON * Consistently call it tcDescription instead of tcConfig * Remove ability to configure best effort queue ID For now, we can safely assume it will always be 0 * Use default for mobile slice * clean up rest API docs * address review comments * Fix test and checkstyles * Move distributed store destroy to preDeactivate hook * Update default tc javadoc * javadoc * review comments * tests * Fix tests * Restore double quotes in json example * [SDFAB-844 - Part 3] Add NetcfgSlicingProvider (#457) * Add SlicingProviderService interface * Remove slice/tc initialization from FabricUpfProgrammable We wil use netcfg for initialization * Remove slice/tc initialization from FabricUpfProgrammable We wil use netcfg for initialization * Remove REST API for adding/removing slice/tcs * Remove unused CLI commands * Revisit TrafficClass and remove hardcoded initialization Sytem is not a traffic class * Introduce TrafficClassConfig class * Remove queue allocation logic * Comments and renaming on SlicingManager * Fix meter color int value * Less ambiguous handling of BE * Fix tests * Remove leftover QueueStoreValue * Javadoc * Wordsmithing * Improvements to TrafficClassConfig * Rename config class to description to disambiguate from netcfg * First stab at config class * First stab at tests for SlicingTests * Forgot to check in the test JSON * Consistently call it tcDescription instead of tcConfig * Move constants to root package * Centralize app name constants in one place It was hard to kkep track of the different app names used * Progress on netcfg slicing provider * Working config add/remove * Fix copyright * Read initial config * wordsmithing * Dyanmic config of system tc * Remove ability to configure best effort queue ID For now, we can safely assume it will always be 0 * Clean up * Use default for mobile slice * clean up rest API docs * address review comments * Fix test and checkstyles * Doubt * Move distributed store destroy to preDeactivate hook * Update default tc javadoc * javadoc * review comments * tests * Fix tests * Address review comments * Add initial tests * Add additional tests * Address review comments * Add tests for system tc handling * Re-add double quotes to javadoc config example * Address Charles's comment * Hardcode mobile slice to 0 for now
This PR introduces a JSON schema for the slicing configuration as well as the
SlicingConfig
class for parsing the corresponding netcfg blob. TheSlicingConfig
class will be used by theNetcfgSlicingProvider
to populate theSlicingManager
stores.TODO:
Sample JSON config: