create static method
Creates a reconnection strategy based on the strategy type.
Implementation
static ReconnectionStrategy create({
ReconnectionStrategyType type = ReconnectionStrategyType.exponential,
Duration? initialDelay,
Duration? maxDelay,
double? multiplier,
Duration? increment,
double? randomizationFactor,
}) {
switch (type) {
case ReconnectionStrategyType.exponential:
return ExponentialBackoffStrategy(
initialDelay: initialDelay ?? const Duration(seconds: 1),
maxDelay: maxDelay ?? const Duration(minutes: 5),
multiplier: multiplier ?? 2.0,
randomizationFactor: randomizationFactor ?? 0.1,
);
case ReconnectionStrategyType.linear:
return LinearBackoffStrategy(
initialDelay: initialDelay ?? const Duration(seconds: 1),
maxDelay: maxDelay ?? const Duration(minutes: 5),
increment: increment ?? const Duration(seconds: 1),
);
case ReconnectionStrategyType.fixed:
return FixedDelayStrategy(
delay: initialDelay ?? const Duration(seconds: 5),
);
case ReconnectionStrategyType.none:
return const NoReconnectionStrategy();
}
}