feat: add mechanism for open-close-principle to OpenFeatureApi #1015
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.
With this approach we allow people to modify the OpenFeatureApi Singleton.
The user can either provide an environment variable called
OPEN_FEATURE_API_CLASS
or a property file calledopenfeature.properties
with which they can control the class, which will be used for instantiation.first the environmental variable
second the properties file
third the default
(optional we could add system properties)
The provided class needs to extend OpenFeatureApi, and if we're not able to instantiate this class, we will fall to the default
This is just a proposal, of how we could add the open-close principle to the OpenFeatureApi, this approach could also work in other languages like python or c# - not sure of the others.