diff options
Diffstat (limited to 'node_modules/exponential-backoff/src/delay/delay.base.ts')
| -rw-r--r-- | node_modules/exponential-backoff/src/delay/delay.base.ts | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/node_modules/exponential-backoff/src/delay/delay.base.ts b/node_modules/exponential-backoff/src/delay/delay.base.ts deleted file mode 100644 index bed90d6..0000000 --- a/node_modules/exponential-backoff/src/delay/delay.base.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { IDelay } from "./delay.interface"; -import { IBackOffOptions } from "../options"; -import { JitterFactory } from "../jitter/jitter.factory"; - -export abstract class Delay implements IDelay { - protected attempt = 0; - constructor(private options: IBackOffOptions) {} - - public apply() { - return new Promise(resolve => setTimeout(resolve, this.jitteredDelay)); - } - - public setAttemptNumber(attempt: number) { - this.attempt = attempt; - } - - private get jitteredDelay() { - const jitter = JitterFactory(this.options); - return jitter(this.delay); - } - - private get delay() { - const constant = this.options.startingDelay; - const base = this.options.timeMultiple; - const power = this.numOfDelayedAttempts; - const delay = constant * Math.pow(base, power); - - return Math.min(delay, this.options.maxDelay); - } - - protected get numOfDelayedAttempts() { - return this.attempt; - } -} |