middleware method

  1. @override
List<GenerateMiddlewareDef> middleware()
override

Middleware provided by the plugin.

Implementation

@override
List<GenerateMiddlewareDef> middleware() => [
  defineMiddleware<RetryOptions>(
    name: 'retry',
    configSchema: RetryOptions.$schema,
    create: (config, ctx) => RetryMiddleware(
      maxRetries: config?.maxRetries ?? 3,
      statuses: config?.statuses ?? RetryMiddleware.defaultRetryStatuses,
      initialDelayMs: config?.initialDelayMs ?? 1000,
      maxDelayMs: config?.maxDelayMs ?? 60000,
      backoffFactor: config?.backoffFactor ?? 2.0,
      noJitter: config?.noJitter ?? false,
      retryModel: config?.retryModel ?? true,
      retryTools: config?.retryTools ?? false,
    ),
  ),
];