-
Notifications
You must be signed in to change notification settings - Fork 36
feat(datafile-management): Integrate config_manager with Optimizely #179
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
Conversation
Not ready for review yet. |
self.logger.exception(error_msg) | ||
self.error_handler.handle_error(error_to_handle) | ||
return | ||
if not self.config_manager: |
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.
Does it make sense to combine this with the sdk_key
check? There doesn't seem to be additional logic outside of the inner if
clause
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.
lgtm
90b88fc
to
e078a48
Compare
fbea190
to
1e56ddd
Compare
Summary
In this change, we move to using
config_manager.PollingConfigManager
andconfig_manager.StaticConfigManager
based on how the SDK is initialized. With the change the SDK may be initialized by either:sdk_key
only: in this case, thePollingConfigManager
will be used which will request and update config at default interval of 5 minutes.datafile
only: in this case, theStaticConfigManager
will be used and the SDK will continue to behave like it has done previously i.e. it will need to be re-initialized.PollingConfigManager
will be used and the SDK will start with a config based on the provided datafile and will update config at default interval of 5 minutes.To use more options on the
PollingConfigManager
like differentupdate_interval
,url
,url_template
, users will have the option to create an instance ofPollingConfigManager
and pass it toOptimizely
asconfig_manager
option.Test plan