Skip to content

Commit c3ef925

Browse files
committed
change: finished feature flag should fallback to default value
1 parent 0bc8b16 commit c3ef925

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

libraries/featureflag/impl/src/main/kotlin/io/element/android/libraries/featureflag/impl/DefaultFeatureFlagService.kt

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,14 @@ class DefaultFeatureFlagService(
2525
private val featuresProvider: FeaturesProvider,
2626
) : FeatureFlagService {
2727
override fun isFeatureEnabledFlow(feature: Feature): Flow<Boolean> {
28-
return providers.filter { it.hasFeature(feature) }
29-
.maxByOrNull(FeatureFlagProvider::priority)
30-
?.isFeatureEnabledFlow(feature)
31-
?: flowOf(feature.defaultValue(buildMeta))
28+
return if (feature.isFinished) {
29+
flowOf(feature.defaultValue(buildMeta))
30+
} else {
31+
providers.filter { it.hasFeature(feature) }
32+
.maxByOrNull(FeatureFlagProvider::priority)
33+
?.isFeatureEnabledFlow(feature)
34+
?: flowOf(feature.defaultValue(buildMeta))
35+
}
3236
}
3337

3438
override suspend fun setFeatureEnabled(feature: Feature, enabled: Boolean): Boolean {

0 commit comments

Comments
 (0)