diff options
| author | pack <pack@packgekko.xyz> | 2026-08-09 10:37:07 +0000 |
|---|---|---|
| committer | pack <pack@packgekko.xyz> | 2026-08-09 10:37:07 +0000 |
| commit | 55a4f1fc869e41aca748c63d3018f0448b1606e0 (patch) | |
| tree | d132d1d01772b6d53faee3e63c534dea5706b78a /node_modules/exponential-backoff/src/delay/delay.factory.ts | |
| download | crud-55a4f1fc869e41aca748c63d3018f0448b1606e0.tar.gz | |
first commit
Diffstat (limited to 'node_modules/exponential-backoff/src/delay/delay.factory.ts')
| -rw-r--r-- | node_modules/exponential-backoff/src/delay/delay.factory.ts | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/node_modules/exponential-backoff/src/delay/delay.factory.ts b/node_modules/exponential-backoff/src/delay/delay.factory.ts new file mode 100644 index 0000000..95e89fb --- /dev/null +++ b/node_modules/exponential-backoff/src/delay/delay.factory.ts @@ -0,0 +1,18 @@ +import { IBackOffOptions } from "../options"; +import { SkipFirstDelay } from "./skip-first/skip-first.delay"; +import { AlwaysDelay } from "./always/always.delay"; +import { IDelay } from "./delay.interface"; + +export function DelayFactory(options: IBackOffOptions, attempt: number): IDelay { + const delay = initDelayClass(options); + delay.setAttemptNumber(attempt); + return delay; +} + +function initDelayClass(options: IBackOffOptions) { + if (!options.delayFirstAttempt) { + return new SkipFirstDelay(options); + } + + return new AlwaysDelay(options); +}
\ No newline at end of file |