getBooleanWithDegradation method
Evaluate a boolean flag with full graceful degradation
This method provides the most robust flag evaluation with comprehensive fallback strategies. Use for critical flags where reliability is paramount.
Parameters
key
: The feature flag keydefaultValue
: Default value if flag evaluation failsstrategy
: Optional fallback strategy override
Fallback Strategies
FallbackStrategy.useDefault
: Use default immediately on failureFallbackStrategy.useCachedOrDefault
: Try cache first, then defaultFallbackStrategy.waitWithTimeout
: Wait with timeout, then cache, then defaultFallbackStrategy.useLastKnownGood
: Use last known good value if available
Example
// Critical feature with timeout strategy
final isEnabled = await client.getBooleanWithDegradation(
'critical_feature',
false,
strategy: FallbackStrategy.waitWithTimeout,
);
if (isEnabled) {
// Enable critical feature
}
Implementation
Future<bool> getBooleanWithDegradation(
String key,
bool defaultValue, {
FallbackStrategy? strategy,
}) async {
return await _featureFlagsComponent.getBooleanWithDegradation(
key,
defaultValue,
strategy: strategy,
);
}