ExponentialBackoffStrategy
        
        extends AbstractBackoffStrategy
    
    
            
            in package
            
        
    
    
    
Implements an exponential backoff retry strategy.
Warning: If no decision making strategies precede this strategy in the the chain, then all requests will be retried
Table of Contents
Properties
Methods
- getBackoffPeriod() : bool|int
- Get the amount of time to delay in seconds before retrying a request
- getNext() : AbstractBackoffStrategy|null
- Get the next backoff strategy in the chain
- makesDecision() : bool
- Check if the strategy does filtering and makes decisions on whether or not to retry.
- setNext() : mixed
- getDelay() : bool|int|null
- Implement the concrete strategy
Properties
$next
    protected
        AbstractBackoffStrategy
    $next
    
    
        Next strategy in the chain
Methods
getBackoffPeriod()
Get the amount of time to delay in seconds before retrying a request
    public
                    getBackoffPeriod(mixed $retries, RequestInterface $request[, Response $response = null ][, HttpException $e = null ]) : bool|int
    Parameters
- $retries : mixed
- 
                    Number of retries of the request 
- $request : RequestInterface
- 
                    Request that was sent 
- $response : Response = null
- 
                    Response that was received. Note that there may not be a response 
- $e : HttpException = null
- 
                    Exception that was encountered if any 
Return values
bool|int —Returns false to not retry or the number of seconds to delay between retries
getNext()
Get the next backoff strategy in the chain
    public
                    getNext() : AbstractBackoffStrategy|null
    Return values
AbstractBackoffStrategy|nullmakesDecision()
Check if the strategy does filtering and makes decisions on whether or not to retry.
    public
                    makesDecision() : bool
    Strategies that return false will never retry if all of the previous strategies in a chain defer on a backoff decision.
Return values
boolsetNext()
    public
                    setNext(AbstractBackoffStrategy $next) : mixed
    Parameters
- $next : AbstractBackoffStrategy
- 
                    Next strategy in the chain 
getDelay()
Implement the concrete strategy
    protected
                    getDelay(mixed $retries, RequestInterface $request[, Response $response = null ][, HttpException $e = null ]) : bool|int|null
    Parameters
- $retries : mixed
- 
                    Number of retries of the request 
- $request : RequestInterface
- 
                    Request that was sent 
- $response : Response = null
- 
                    Response that was received. Note that there may not be a response 
- $e : HttpException = null
- 
                    Exception that was encountered if any 
Return values
bool|int|null —Returns false to not retry or the number of seconds to delay between retries. Return true or null to defer to the next strategy if available, and if not, return 0.