Skip to content
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

Add updatable config source #3

Merged
merged 24 commits into from
Oct 29, 2021
Merged

Conversation

infeo
Copy link
Member

@infeo infeo commented Oct 25, 2021

This PR implements an editable, in memory MicroProfile ConfigSource.

The source is provided via the SmallRye ConfigSourceProviderFactory, in order to be able to change the hub config persistence path.
Edit: This approach was dropped, instead the config persistence path is taken from the system property hub.config.path.

The whole config is persisted to the path stored in the property hub.config.path. There is no default, application won't start if the property is not set. After each update of the hub config, it is rewritten to storage. If a properties file is present, it is loaded at config creation.

The config can be updated by injection the HubConfig and calling setProperty(...).

@infeo infeo requested a review from overheadhunter October 25, 2021 15:10
infeo and others added 6 commits October 26, 2021 17:49
* differ betwenn files not exist and other io errors on reading hub config
* configSource only depends on a system property
* remove smallRye configSourceFactory
* register configSource directly
* getProperties returns unmodifiable map
* restrict set properties with enum
* use directly the Properties class
* synchronized setProperty
@overheadhunter overheadhunter changed the title Feature/dynamic config Add updatable config source Oct 28, 2021
@overheadhunter overheadhunter merged commit 1c839b1 into develop Oct 29, 2021
@overheadhunter overheadhunter deleted the feature/dynamic-config branch October 29, 2021 06:13
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.

2 participants