crateApiModelsConfigResilienceConfigNew method

  1. @override
Future<ResilienceConfig> crateApiModelsConfigResilienceConfigNew({
  1. required CheckStrategy strategy,
  2. required int circuitBreakerThreshold,
  3. required BigInt circuitBreakerCooldownMs,
  4. required int numJitterSamples,
  5. required double jitterThresholdPercent,
  6. required int stabilityThershold,
  7. required double criticalPacketLossPrecent,
})
override

Implementation

@override
Future<ResilienceConfig> crateApiModelsConfigResilienceConfigNew(
    {required CheckStrategy strategy,
    required int circuitBreakerThreshold,
    required BigInt circuitBreakerCooldownMs,
    required int numJitterSamples,
    required double jitterThresholdPercent,
    required int stabilityThershold,
    required double criticalPacketLossPrecent}) {
  return handler.executeNormal(NormalTask(
    callFfi: (port_) {
      final serializer = SseSerializer(generalizedFrbRustBinding);
      sse_encode_check_strategy(strategy, serializer);
      sse_encode_u_8(circuitBreakerThreshold, serializer);
      sse_encode_u_64(circuitBreakerCooldownMs, serializer);
      sse_encode_u_8(numJitterSamples, serializer);
      sse_encode_f_64(jitterThresholdPercent, serializer);
      sse_encode_u_8(stabilityThershold, serializer);
      sse_encode_f_32(criticalPacketLossPrecent, serializer);
      pdeCallFfi(generalizedFrbRustBinding, serializer,
          funcId: 42, port: port_);
    },
    codec: SseCodec(
      decodeSuccessData: sse_decode_resilience_config,
      decodeErrorData: null,
    ),
    constMeta: kCrateApiModelsConfigResilienceConfigNewConstMeta,
    argValues: [
      strategy,
      circuitBreakerThreshold,
      circuitBreakerCooldownMs,
      numJitterSamples,
      jitterThresholdPercent,
      stabilityThershold,
      criticalPacketLossPrecent
    ],
    apiImpl: this,
  ));
}