Class: LaunchDarkly::OpenFeature::Impl::DataSourceStatusListener
- Inherits:
-
Object
- Object
- LaunchDarkly::OpenFeature::Impl::DataSourceStatusListener
- Defined in:
- lib/ldclient-openfeature/impl/event_listeners.rb
Overview
Translates LaunchDarkly data source status changes into OpenFeature provider events.
Instance Method Summary collapse
-
#initialize(provider) ⇒ DataSourceStatusListener
constructor
A new instance of DataSourceStatusListener.
- #update(status) ⇒ void
Constructor Details
#initialize(provider) ⇒ DataSourceStatusListener
Returns a new instance of DataSourceStatusListener.
16 17 18 |
# File 'lib/ldclient-openfeature/impl/event_listeners.rb', line 16 def initialize(provider) @provider = provider end |
Instance Method Details
#update(status) ⇒ void
This method returns an undefined value.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/ldclient-openfeature/impl/event_listeners.rb', line 25 def update(status) case status.state when ::LaunchDarkly::Interfaces::DataSource::Status::VALID @provider.emit_event(::OpenFeature::SDK::ProviderEvent::PROVIDER_READY) when ::LaunchDarkly::Interfaces::DataSource::Status::INTERRUPTED @provider.emit_event( ::OpenFeature::SDK::ProviderEvent::PROVIDER_STALE, message: (status, "the data source has been interrupted") ) when ::LaunchDarkly::Interfaces::DataSource::Status::OFF @provider.emit_event( ::OpenFeature::SDK::ProviderEvent::PROVIDER_ERROR, error_code: ::OpenFeature::SDK::Provider::ErrorCode::GENERAL, message: (status, "the data source has been permanently shut down") ) end end |