Class: shaka.net.Backoff

Constructor

new Backoff(parameters, autoResetopt)

Backoff represents delay and backoff state. This is used by NetworkingEngine for individual requests and by StreamingEngine to retry streaming failures.
Parameters:
Name Type Attributes Description
parameters shaka.extern.RetryParameters
autoReset boolean <optional>
If true, start at a "first retry" state and and auto-reset that state when we reach maxAttempts. Default set to false.
Source:

Members

(private) autoReset_ :boolean

Type:
  • boolean
Source:

(private, constant) backoffFactor_ :number

Type:
  • number
Source:

(private, constant) baseDelay_ :number

Type:
  • number
Source:

(private, constant) fuzzFactor_ :number

Type:
  • number
Source:

(private, constant) maxAttempts_ :number

Type:
  • number
Source:

(private) nextUnfuzzedDelay_ :number

Type:
  • number
Source:

(private) numAttempts_ :number

Type:
  • number
Source:

Methods

(static) defaultRetryParameters() → {shaka.extern.RetryParameters}

Gets a copy of the default retry parameters.
Source:
Returns:
Type
shaka.extern.RetryParameters

(static) defer(delayInMs, callback)

This method is only public for testing. It allows us to intercept the time-delay call.
Parameters:
Name Type Description
delayInMs number
callback function()
Source:

(private, static) fuzz_(value, fuzzFactor) → {number}

Fuzz the input value by +/- fuzzFactor. For example, a fuzzFactor of 0.5 will create a random value that is between 50% and 150% of the input value.
Parameters:
Name Type Description
value number
fuzzFactor number
Source:
Returns:
The fuzzed value
Type
number

attempt() → (non-null) {Promise}

Source:
Returns:
Resolves when the caller may make an attempt, possibly after a delay. Rejects if no more attempts are allowed.
Type
Promise

(private) reset_()

Reset state in autoReset mode.
Source: