Class: Flagsmith::EnvironmentDataPollingManager
- Inherits:
-
Object
- Object
- Flagsmith::EnvironmentDataPollingManager
- Includes:
- SDK::Intervals
- Defined in:
- lib/flagsmith/sdk/pooling_manager.rb
Overview
Manager to asynchronously fetch the environment
Instance Method Summary collapse
-
#initialize(main, refresh_interval_seconds) ⇒ EnvironmentDataPollingManager
constructor
A new instance of EnvironmentDataPollingManager.
- #start ⇒ Object
- #stop ⇒ Object
Methods included from SDK::Intervals
#clear_interval, #set_interval
Constructor Details
#initialize(main, refresh_interval_seconds) ⇒ EnvironmentDataPollingManager
Returns a new instance of EnvironmentDataPollingManager.
10 11 12 13 |
# File 'lib/flagsmith/sdk/pooling_manager.rb', line 10 def initialize(main, refresh_interval_seconds) @main = main @refresh_interval_seconds = refresh_interval_seconds end |
Instance Method Details
#start ⇒ Object
15 16 17 18 19 20 21 22 23 |
# File 'lib/flagsmith/sdk/pooling_manager.rb', line 15 def start update_environment = lambda { stop @interval = set_interval(@refresh_interval_seconds) { @main.update_environment } } # TODO: this call should be awaited for getIdentityFlags/getEnvironmentFlags when enableLocalEvaluation is true update_environment.call end |
#stop ⇒ Object
25 26 27 28 29 |
# File 'lib/flagsmith/sdk/pooling_manager.rb', line 25 def stop return unless @interval clear_interval(@interval) end |