Fixes #360 - updated reflect-config.json reachability metadata #361
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.



This pull request introduces several improvements and refactorings to the
switcher-clientproject, focusing on standardizing theEntryAPI, updating reflection configuration for native image compatibility, and enhancing test coverage and reliability. The changes make the codebase more consistent and robust, particularly in howEntryobjects are created and how reflection is validated for GraalVM native images.Core API improvements:
Entryclass by making its constructors public and renaming the static builder methods frombuildtooffor clearer and more conventional object creation. Updated all usages throughout the codebase and tests to use the newofmethods. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]Native image and reflection configuration:
reflect-config.jsonto specify constructor parameter types for several classes, improving GraalVM native image compatibility and ensuring correct reflection metadata for constructors with arguments. [1] [2] [3] [4] [5]Testing enhancements:
NativeReflectConfigTest) to verify that all constructors specified in the reflection config are actually reachable, including those with complex parameter types such as arrays and primitives. Added utility methods to resolve class types from string names. [1] [2] [3]Project metadata:
pom.xmlfrom2.4.0to2.4.1-SNAPSHOTto reflect ongoing development.